<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.11"/>
<title>ShipCAD: ShipCADlib/subdivlayer.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">ShipCAD
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_f0b6ef187c5b1483641b038f81654ac4.html">ShipCADlib</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="headertitle">
<div class="title">subdivlayer.cpp</div>  </div>
</div><!--header-->
<div class="contents">
<a href="subdivlayer_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/*##############################################################################################</span></div><div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment"> *    ShipCAD                                                                                  *</span></div><div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment"> *    Copyright 2015, by Greg Green &lt;ggreen@bit-builder.com&gt;                                   *</span></div><div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment"> *    Original Copyright header below                                                          *</span></div><div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment"> *                                                                                             *</span></div><div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment"> *    This code is distributed as part of the FREE!ship project. FREE!ship is an               *</span></div><div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment"> *    open source surface-modelling program based on subdivision surfaces and intended for     *</span></div><div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment"> *    designing ships.                                                                         *</span></div><div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment"> *                                                                                             *</span></div><div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment"> *    Copyright © 2005, by Martijn van Engeland                                                *</span></div><div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment"> *    e-mail                  : Info@FREEship.org                                              *</span></div><div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment"> *    FREE!ship project page  : https://sourceforge.net/projects/freeship                      *</span></div><div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment"> *    FREE!ship homepage      : www.FREEship.org                                               *</span></div><div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment"> *                                                                                             *</span></div><div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment"> *    This program is free software; you can redistribute it and/or modify it under            *</span></div><div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment"> *    the terms of the GNU General Public License as published by the                          *</span></div><div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="comment"> *    Free Software Foundation; either version 2 of the License, or (at your option)           *</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="comment"> *    any later version.                                                                       *</span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="comment"> *                                                                                             *</span></div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="comment"> *    This program is distributed in the hope that it will be useful, but WITHOUT ANY          *</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="comment"> *    WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A          *</span></div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="comment"> *    PARTICULAR PURPOSE. See the GNU General Public License for more details.                 *</span></div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="comment"> *                                                                                             *</span></div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="comment"> *    You should have received a copy of the GNU General Public License along with             *</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="comment"> *    this program; if not, write to the Free Software Foundation, Inc.,                       *</span></div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="comment"> *    59 Temple Place, Suite 330, Boston, MA 02111-1307 USA                                    *</span></div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="comment"> *                                                                                             *</span></div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="comment"> *#############################################################################################*/</span></div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#include &lt;iostream&gt;</span></div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#include &lt;stdexcept&gt;</span></div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor">#include &lt;cmath&gt;</span></div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;</div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="subdivlayer_8h.html">subdivlayer.h</a>&quot;</span></div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="subdivface_8h.html">subdivface.h</a>&quot;</span></div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="subdivsurface_8h.html">subdivsurface.h</a>&quot;</span></div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="subdivpoint_8h.html">subdivpoint.h</a>&quot;</span></div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="plane_8h.html">plane.h</a>&quot;</span></div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="subdivedge_8h.html">subdivedge.h</a>&quot;</span></div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="utility_8h.html">utility.h</a>&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="filebuffer_8h.html">filebuffer.h</a>&quot;</span></div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="viewport_8h.html">viewport.h</a>&quot;</span></div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="controlfacegrid_8h.html">controlfacegrid.h</a>&quot;</span></div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="pointgrid_8h.html">pointgrid.h</a>&quot;</span></div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="developedpatch_8h.html">developedpatch.h</a>&quot;</span></div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="keyword">using namespace </span><a class="code" href="namespacestd.html">std</a>;</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="keyword">using namespace </span><a class="code" href="namespaceShipCAD.html">ShipCAD</a>;</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#a7d41b9d0ff65032014ec52ff846f32a7">   51</a></span>&#160;<a class="code" href="classShipCAD_1_1SubdivisionLayer.html">SubdivisionLayer</a>* SubdivisionLayer::construct(<a class="code" href="classShipCAD_1_1SubdivisionSurface.html">SubdivisionSurface</a>* owner)</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;{</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    <span class="keywordtype">void</span> * mem = owner-&gt;<a class="code" href="classShipCAD_1_1SubdivisionSurface.html#ad124b77753880a92de21d5d16333f966">getLayerPool</a>().add();</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    <span class="keywordflow">return</span> <span class="keyword">new</span> (mem) <a class="code" href="classShipCAD_1_1SubdivisionLayer.html">SubdivisionLayer</a>(owner);</div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;}</div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#a788864a40265b764b8d97d9a9cbbbd13">   57</a></span>&#160;SubdivisionLayer::SubdivisionLayer(<a class="code" href="classShipCAD_1_1SubdivisionSurface.html">SubdivisionSurface</a>* owner)</div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    : <a class="code" href="classShipCAD_1_1SubdivisionBase.html">SubdivisionBase</a>(owner), _layerid(0), _color(_owner-&gt;getLayerColor()),</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;      _visible(true), _symmetric(true), _developable(false), _use_for_intersections(true),</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;      _use_in_hydrostatics(true), _show_in_linesplan(true), _material_density(0),</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;      _thickness(0), _alphablend(255)</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;{</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    <span class="comment">// does nothing</span></div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;}</div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#a4e852a07f46e57f28ffedd4a68c2f4c4">   66</a></span>&#160;<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a4e852a07f46e57f28ffedd4a68c2f4c4">SubdivisionLayer::~SubdivisionLayer</a>()</div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;{</div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    <span class="keywordflow">if</span> (<a class="code" href="classShipCAD_1_1SubdivisionBase.html#a164481259436bf18bc22a0626ab66c09">_owner</a>-&gt;<a class="code" href="classShipCAD_1_1SubdivisionSurface.html#a5f2fbd88c0652692848f71945c6e34b8">getActiveLayer</a>() == <span class="keyword">this</span>)</div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionBase.html#a164481259436bf18bc22a0626ab66c09">_owner</a>-&gt;<a class="code" href="classShipCAD_1_1SubdivisionSurface.html#a69bafa71111e562a52a089be99b47871">setActiveLayer</a>(0);</div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;    <span class="keywordflow">if</span> (<a class="code" href="classShipCAD_1_1SubdivisionBase.html#a164481259436bf18bc22a0626ab66c09">_owner</a>-&gt;<a class="code" href="classShipCAD_1_1SubdivisionSurface.html#afca8f2be85e020c226d615f093a54aa8">hasLayer</a>(<span class="keyword">this</span>))</div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionBase.html#a164481259436bf18bc22a0626ab66c09">_owner</a>-&gt;<a class="code" href="classShipCAD_1_1SubdivisionSurface.html#a3f0dac49106056562a8b675c61918abe">deleteLayer</a>(<span class="keyword">this</span>);</div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;}</div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;</div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#a22eacfdf763840d534d45b18b789f8c7">   74</a></span>&#160;QString <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a22eacfdf763840d534d45b18b789f8c7">SubdivisionLayer::getName</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;<span class="keyword"></span>{</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;    <span class="keywordflow">if</span> (<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a33bbfedf8f0d130d91c74a65a575eb2a">_desc</a> == <span class="stringliteral">&quot;&quot;</span>) {</div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;        <span class="keywordflow">return</span> QString(<span class="stringliteral">&quot;%1_%2&quot;</span>).arg(<a class="code" href="classShipCAD_1_1SubdivisionBase.html#a164481259436bf18bc22a0626ab66c09">_owner</a>-&gt;<a class="code" href="classShipCAD_1_1SubdivisionSurface.html#abcf2b65e206516f95021ad4f3f3aaf25">getDefaultLayerName</a>()).arg(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a73e4956d179d6ebd6c062e7e76bca196">_layerid</a>);</div><div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;    }</div><div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;    <span class="keywordflow">else</span></div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a33bbfedf8f0d130d91c74a65a575eb2a">_desc</a>;</div><div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;}</div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;</div><div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#a2e1538a000268fe5f56bf2bea4973c23">   83</a></span>&#160;<a class="code" href="classShipCAD_1_1SubdivisionControlFace.html">SubdivisionControlFace</a>* <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a2e1538a000268fe5f56bf2bea4973c23">SubdivisionLayer::getFace</a>(<span class="keywordtype">size_t</span> index)</div><div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;{</div><div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;    <span class="keywordflow">if</span> (index &lt; <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a98b25b86a7104e4f987d34506438113f">_patches</a>.size())</div><div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a98b25b86a7104e4f987d34506438113f">_patches</a>[index];</div><div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;    <span class="keywordflow">throw</span> out_of_range(<span class="stringliteral">&quot;index out of range in SubdivisionLayer::getFace&quot;</span>);</div><div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;}</div><div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;</div><div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#a13a971f70ac8907ecaa0c083b98519e0">   90</a></span>&#160;<span class="keyword">const</span> <a class="code" href="classShipCAD_1_1SubdivisionControlFace.html">SubdivisionControlFace</a>* <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a2e1538a000268fe5f56bf2bea4973c23">SubdivisionLayer::getFace</a>(<span class="keywordtype">size_t</span> index)<span class="keyword"> const</span></div><div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;<span class="keyword"></span>{</div><div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;    <span class="keywordflow">if</span> (index &lt; <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a98b25b86a7104e4f987d34506438113f">_patches</a>.size())</div><div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a98b25b86a7104e4f987d34506438113f">_patches</a>[index];</div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;    <span class="keywordflow">throw</span> out_of_range(<span class="stringliteral">&quot;index out of range in SubdivisionLayer::getFace&quot;</span>);</div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;}</div><div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;</div><div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#ab5494ac4f4d15f3923ea8496b12c6239">   97</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#ab5494ac4f4d15f3923ea8496b12c6239">SubdivisionLayer::processTriangle</a>(<span class="keyword">const</span> QVector3D&amp; p1, </div><div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;                                       <span class="keyword">const</span> QVector3D&amp; p2,</div><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;                                       <span class="keyword">const</span> QVector3D&amp; p3,</div><div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;                                       <a class="code" href="structShipCAD_1_1LayerProperties.html">LayerProperties</a>&amp; props)<span class="keyword"> const</span></div><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;<span class="keyword"></span>{</div><div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;    QVector3D center = (p1 + p2 + p3) / 3.0f;</div><div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;    <span class="keywordtype">float</span> ax = 0.5 * ((p1.y() - p2.y()) * (p1.z() + p2.z())</div><div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;                      + (p2.y() - p3.y()) * (p2.z() + p3.z())</div><div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;                      + (p3.y() - p1.y()) * (p3.z() + p1.z()));</div><div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;    <span class="keywordtype">float</span> ay = 0.5 * ((p1.z() - p2.z()) * (p1.x() + p2.x())</div><div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;                      + (p2.z() - p3.z()) * (p2.x() + p3.x())</div><div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;                      + (p3.z() - p1.z()) * (p3.x() + p1.x()));</div><div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;    <span class="keywordtype">float</span> az = 0.5 * ((p1.x() - p2.x()) * (p1.y() + p2.y())</div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;                      + (p2.x() - p3.x()) * (p2.y() + p3.y())</div><div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;                      + (p3.x() - p1.x()) * (p3.y() + p1.y()));</div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;    <span class="keywordtype">float</span> area = sqrt(ax * ax + ay * ay + az * az);</div><div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;    props.<a class="code" href="structShipCAD_1_1LayerProperties.html#aff6dab68937efc1abd7bb5066373f514">surface_area</a> += area;</div><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;    props.<a class="code" href="structShipCAD_1_1LayerProperties.html#a1b4bc8254c8cb90df594bc7905ce3e22">surface_center_of_gravity</a> += (area * center);</div><div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;}</div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;</div><div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#aee60763cd9524debb45f4a04e46676f2">  117</a></span>&#160;<a class="code" href="structShipCAD_1_1LayerProperties.html">LayerProperties</a> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#aee60763cd9524debb45f4a04e46676f2">SubdivisionLayer::getSurfaceProperties</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;<span class="keyword"></span>{</div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;    <a class="code" href="structShipCAD_1_1LayerProperties.html">LayerProperties</a> result;</div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;    result.<a class="code" href="structShipCAD_1_1LayerProperties.html#aff6dab68937efc1abd7bb5066373f514">surface_area</a> = 0;</div><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;    result.<a class="code" href="structShipCAD_1_1LayerProperties.html#a4e9844dd95994725401ad93c5c3a00e9">weight</a> = 0;</div><div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;    result.<a class="code" href="structShipCAD_1_1LayerProperties.html#a1b4bc8254c8cb90df594bc7905ce3e22">surface_center_of_gravity</a> = <a class="code" href="namespaceShipCAD.html#a949bc53a1634b268b43de672807480fb">ZERO</a>;</div><div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;</div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i=1; i&lt;=<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a98b25b86a7104e4f987d34506438113f">_patches</a>.size(); ++i) {</div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> j=1; j&lt;=<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a98b25b86a7104e4f987d34506438113f">_patches</a>[i-1]-&gt;numberOfChildren(); ++j) {</div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;            <a class="code" href="classShipCAD_1_1SubdivisionFace.html">SubdivisionFace</a>* child = <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a98b25b86a7104e4f987d34506438113f">_patches</a>[i-1]-&gt;getChild(j-1);</div><div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;            <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> k=3; k&lt;=child-&gt;<a class="code" href="classShipCAD_1_1SubdivisionFace.html#abd79b6dfadd10befe94b524a34063b27">numberOfPoints</a>(); ++k) {</div><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;                <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#ab5494ac4f4d15f3923ea8496b12c6239">processTriangle</a>(child-&gt;<a class="code" href="classShipCAD_1_1SubdivisionFace.html#a68bc7676c4f254ddb19e04f8cb5ba76f">getPoint</a>(0)-&gt;<a class="code" href="classShipCAD_1_1SubdivisionPoint.html#a285325115089a1b99be4480bf6079bf1">getCoordinate</a>(),</div><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;                                child-&gt;<a class="code" href="classShipCAD_1_1SubdivisionFace.html#a68bc7676c4f254ddb19e04f8cb5ba76f">getPoint</a>(k-2)-&gt;<a class="code" href="classShipCAD_1_1SubdivisionPoint.html#a285325115089a1b99be4480bf6079bf1">getCoordinate</a>(),</div><div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;                                child-&gt;<a class="code" href="classShipCAD_1_1SubdivisionFace.html#a68bc7676c4f254ddb19e04f8cb5ba76f">getPoint</a>(k-1)-&gt;<a class="code" href="classShipCAD_1_1SubdivisionPoint.html#a285325115089a1b99be4480bf6079bf1">getCoordinate</a>(),</div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;                                result);</div><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;            }</div><div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;        }</div><div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;    }</div><div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;    <span class="keywordflow">if</span> (result.<a class="code" href="structShipCAD_1_1LayerProperties.html#aff6dab68937efc1abd7bb5066373f514">surface_area</a> != 0) {</div><div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;        result.<a class="code" href="structShipCAD_1_1LayerProperties.html#a1b4bc8254c8cb90df594bc7905ce3e22">surface_center_of_gravity</a> /= result.<a class="code" href="structShipCAD_1_1LayerProperties.html#aff6dab68937efc1abd7bb5066373f514">surface_area</a>;</div><div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#af1d37cf069e050828f42c034ada4661e">isSymmetric</a>()) {</div><div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;            result.<a class="code" href="structShipCAD_1_1LayerProperties.html#aff6dab68937efc1abd7bb5066373f514">surface_area</a> *= 2.0f;</div><div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;            result.<a class="code" href="structShipCAD_1_1LayerProperties.html#a1b4bc8254c8cb90df594bc7905ce3e22">surface_center_of_gravity</a>.setY(0);</div><div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;        }</div><div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;        result.<a class="code" href="structShipCAD_1_1LayerProperties.html#a4e9844dd95994725401ad93c5c3a00e9">weight</a> = result.<a class="code" href="structShipCAD_1_1LayerProperties.html#aff6dab68937efc1abd7bb5066373f514">surface_area</a> * <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a00a308fdf03a0c1d9a6fa65f965e7942">_thickness</a> * <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#adfdd4e996a5be7147a2eeb682dd93ff8">_material_density</a>;</div><div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;    }</div><div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;    <span class="keywordflow">return</span> result;</div><div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;}</div><div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;</div><div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#a066c619a1925ab25ecf068764e4df97c">  146</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a066c619a1925ab25ecf068764e4df97c">SubdivisionLayer::setAlphaBlend</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> val)</div><div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;{</div><div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;    <span class="keywordflow">if</span> (val != <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a1681170da038b0708d1b4dcd2ec89b81">_alphablend</a>) {</div><div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a1681170da038b0708d1b4dcd2ec89b81">_alphablend</a> = val;</div><div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;    }</div><div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;}</div><div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;</div><div class="line"><a name="l00153"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#a6fdfc0d208904d821349eb7380a52411">  153</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a6fdfc0d208904d821349eb7380a52411">SubdivisionLayer::setDevelopable</a>(<span class="keywordtype">bool</span> val)</div><div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;{</div><div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;    <span class="keywordflow">if</span> (val != <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a81dad738f58f9b4632c1575d0b59ddb0">_developable</a>) {</div><div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a81dad738f58f9b4632c1575d0b59ddb0">_developable</a> = val;</div><div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;    }</div><div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;}</div><div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;</div><div class="line"><a name="l00160"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#a3861c77aeb283fbea6efe943ced83f41">  160</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a3861c77aeb283fbea6efe943ced83f41">SubdivisionLayer::setName</a>(<span class="keyword">const</span> QString&amp; val)</div><div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;{</div><div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;    <span class="keywordflow">if</span> (QString::compare(val, <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a33bbfedf8f0d130d91c74a65a575eb2a">_desc</a>, Qt::CaseInsensitive) != 0) {</div><div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a33bbfedf8f0d130d91c74a65a575eb2a">_desc</a> = val;</div><div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;    }</div><div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;}</div><div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;</div><div class="line"><a name="l00167"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#af6c25ed582173a904496f0dc7a45d725">  167</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#af6c25ed582173a904496f0dc7a45d725">SubdivisionLayer::setDescription</a>(<span class="keyword">const</span> QString&amp; val)</div><div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;{</div><div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;    <span class="keywordflow">if</span> (QString::compare(val, <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a33bbfedf8f0d130d91c74a65a575eb2a">_desc</a>, Qt::CaseInsensitive) != 0) {</div><div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a33bbfedf8f0d130d91c74a65a575eb2a">_desc</a> = val;</div><div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;    }</div><div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;}</div><div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;</div><div class="line"><a name="l00174"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#ab3c7c5072ba6cd411404651e8e0dca2f">  174</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#ab3c7c5072ba6cd411404651e8e0dca2f">SubdivisionLayer::setSymmetric</a>(<span class="keywordtype">bool</span> val)</div><div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;{</div><div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;    <span class="keywordflow">if</span> (val != <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#aaeddcdf1d08d84c76c5453f4a71fbe7a">_symmetric</a>) {</div><div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#aaeddcdf1d08d84c76c5453f4a71fbe7a">_symmetric</a> = val;</div><div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;    }</div><div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;}</div><div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;</div><div class="line"><a name="l00181"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#a5494031433242c810e6e307bfef33e6d">  181</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a5494031433242c810e6e307bfef33e6d">SubdivisionLayer::setColor</a>(QColor val)</div><div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;{</div><div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;    <span class="keywordflow">if</span> (val != <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a6da22248952737662360fa3b2730a35f">_color</a>) {</div><div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a6da22248952737662360fa3b2730a35f">_color</a> = val;</div><div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;    }</div><div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;}</div><div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;</div><div class="line"><a name="l00188"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#a992e177c7a4b468ab2e3549e44661f3a">  188</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a992e177c7a4b468ab2e3549e44661f3a">SubdivisionLayer::setThickness</a>(<span class="keywordtype">float</span> t)</div><div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;{</div><div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;    <span class="keywordflow">if</span> (fabs(t - <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a00a308fdf03a0c1d9a6fa65f965e7942">_thickness</a>) &gt; 1e-5) {</div><div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a00a308fdf03a0c1d9a6fa65f965e7942">_thickness</a> = t;</div><div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;    }</div><div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;}</div><div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;</div><div class="line"><a name="l00195"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#a4f65806f7c1a42e3a54ed13722790432">  195</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a4f65806f7c1a42e3a54ed13722790432">SubdivisionLayer::setMaterialDensity</a>(<span class="keywordtype">float</span> d)</div><div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;{</div><div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;    <span class="keywordflow">if</span> (fabs(d - <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#adfdd4e996a5be7147a2eeb682dd93ff8">_material_density</a>) &gt; 1e-5) {</div><div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#adfdd4e996a5be7147a2eeb682dd93ff8">_material_density</a> = d;</div><div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;    }</div><div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;}</div><div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;</div><div class="line"><a name="l00202"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#aa58323da0043db61eaa87672755e96d2">  202</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#aa58323da0043db61eaa87672755e96d2">SubdivisionLayer::setShowInLinesplan</a>(<span class="keywordtype">bool</span> val)</div><div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;{</div><div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;    <span class="keywordflow">if</span> (val != <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a373fd987b5f973a995517e7f97fda5ac">_show_in_linesplan</a>) {</div><div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a373fd987b5f973a995517e7f97fda5ac">_show_in_linesplan</a> = val;</div><div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;    }</div><div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;}</div><div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;</div><div class="line"><a name="l00209"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#a88897eeb2b600169ca110fc4ec4aef08">  209</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a88897eeb2b600169ca110fc4ec4aef08">SubdivisionLayer::setUseInHydrostatics</a>(<span class="keywordtype">bool</span> val)</div><div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;{</div><div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;    <span class="keywordflow">if</span> (val != <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#ad36d65882f0c46ff1b3ced7d48c173f4">_use_in_hydrostatics</a>) {</div><div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#ad36d65882f0c46ff1b3ced7d48c173f4">_use_in_hydrostatics</a> = val;</div><div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;    }</div><div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;}</div><div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;</div><div class="line"><a name="l00216"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#aef63325b0ef8b700b96a7cd97c501936">  216</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#aef63325b0ef8b700b96a7cd97c501936">SubdivisionLayer::setUseForIntersections</a>(<span class="keywordtype">bool</span> val)</div><div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;{</div><div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;    <span class="keywordflow">if</span> (val != <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a8213aa3e02493472fb11949f595446f2">_use_for_intersections</a>) {</div><div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a8213aa3e02493472fb11949f595446f2">_use_for_intersections</a> = val;</div><div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;    }</div><div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;}</div><div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;</div><div class="line"><a name="l00223"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#a979723de5c5cf0f4ecea8a5f9d0968d7">  223</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a979723de5c5cf0f4ecea8a5f9d0968d7">SubdivisionLayer::setVisible</a>(<span class="keywordtype">bool</span> val)</div><div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;{</div><div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;    <span class="keywordflow">if</span> (val != <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a2d606476aba40bbbfc115c449f46ac26">_visible</a>) {</div><div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a2d606476aba40bbbfc115c449f46ac26">_visible</a> = val;</div><div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;    }</div><div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;}</div><div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;</div><div class="line"><a name="l00230"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#a4a4190cc8ce19c975af865d1ce435f39">  230</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a4a4190cc8ce19c975af865d1ce435f39">SubdivisionLayer::useControlFace</a>(<a class="code" href="classShipCAD_1_1SubdivisionControlFace.html">SubdivisionControlFace</a>* face)</div><div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;{</div><div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;    <span class="comment">// disconnect from current layer</span></div><div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;    <span class="keywordflow">if</span> (face-&gt;<a class="code" href="classShipCAD_1_1SubdivisionControlFace.html#a25e4ea676adc327a430b50a81e91ef9d">getLayer</a>() != 0 &amp;&amp; face-&gt;<a class="code" href="classShipCAD_1_1SubdivisionControlFace.html#a25e4ea676adc327a430b50a81e91ef9d">getLayer</a>() != <span class="keyword">this</span>)</div><div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;        face-&gt;<a class="code" href="classShipCAD_1_1SubdivisionControlFace.html#a25e4ea676adc327a430b50a81e91ef9d">getLayer</a>()-&gt;<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a234cb1ed2e4a4fceb4c7701d0a56f42e">releaseControlFace</a>(face);</div><div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;    <span class="keywordflow">if</span> (find(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a98b25b86a7104e4f987d34506438113f">_patches</a>.begin(), <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a98b25b86a7104e4f987d34506438113f">_patches</a>.end(), face) == <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a98b25b86a7104e4f987d34506438113f">_patches</a>.end())</div><div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a98b25b86a7104e4f987d34506438113f">_patches</a>.push_back(face);</div><div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;    face-&gt;<a class="code" href="classShipCAD_1_1SubdivisionControlFace.html#a23631dfffd1c3ad7fc59537a4684fa01">setLayer</a>(<span class="keyword">this</span>);</div><div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;}</div><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;</div><div class="line"><a name="l00240"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#a319ae070f596e92307671cda0a607887">  240</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a319ae070f596e92307671cda0a607887">SubdivisionLayer::assignProperties</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html">SubdivisionLayer</a>* source)</div><div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;{</div><div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a6da22248952737662360fa3b2730a35f">_color</a> = source-&gt;<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a6da22248952737662360fa3b2730a35f">_color</a>;</div><div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a2d606476aba40bbbfc115c449f46ac26">_visible</a> = source-&gt;<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a2d606476aba40bbbfc115c449f46ac26">_visible</a>;</div><div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a33bbfedf8f0d130d91c74a65a575eb2a">_desc</a> = source-&gt;<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a33bbfedf8f0d130d91c74a65a575eb2a">_desc</a>;</div><div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#aaeddcdf1d08d84c76c5453f4a71fbe7a">_symmetric</a> = source-&gt;<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#aaeddcdf1d08d84c76c5453f4a71fbe7a">_symmetric</a>;</div><div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a81dad738f58f9b4632c1575d0b59ddb0">_developable</a> = source-&gt;<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a81dad738f58f9b4632c1575d0b59ddb0">_developable</a>;</div><div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#adfdd4e996a5be7147a2eeb682dd93ff8">_material_density</a> = source-&gt;<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#adfdd4e996a5be7147a2eeb682dd93ff8">_material_density</a>;</div><div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a00a308fdf03a0c1d9a6fa65f965e7942">_thickness</a> = source-&gt;<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a00a308fdf03a0c1d9a6fa65f965e7942">_thickness</a>;</div><div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;}</div><div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;</div><div class="line"><a name="l00251"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#aa3f5427f8d5dc40964721acf840b2e24">  251</a></span>&#160;<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html">LayerPropertiesForDialog</a> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#aa3f5427f8d5dc40964721acf840b2e24">SubdivisionLayer::getProperties</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;<span class="keyword"></span>{</div><div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;    <a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html">LayerPropertiesForDialog</a> props;</div><div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;    props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#a0bcd4eb69a1b82c26e9dfcf1707cf850">data</a> = <span class="keyword">this</span>;</div><div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;    props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#a09578942af620f75d1599887672ec8da">name</a> = <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a22eacfdf763840d534d45b18b789f8c7">getName</a>();</div><div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;    props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#a20a555fd2c477f691cc04a4fe9b7f6b0">color</a> = <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a6da22248952737662360fa3b2730a35f">_color</a>;</div><div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;    props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#a8ecd6d4c933122d9f3c8f3c8fcf54781">alpha</a> = <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a1681170da038b0708d1b4dcd2ec89b81">_alphablend</a> / 255.0;</div><div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;    props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#a2ac6ce1339e9dfc028016c5bacea3cae">hydrostatics</a> = <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#ad36d65882f0c46ff1b3ced7d48c173f4">_use_in_hydrostatics</a>;</div><div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;    props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#a3acf39b44721d89ea8906052cc0bedde">symmetric</a> = <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#aaeddcdf1d08d84c76c5453f4a71fbe7a">_symmetric</a>;</div><div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;    props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#a6003cb18c39e66df709658c14203d066">intersection_curves</a> = <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a8213aa3e02493472fb11949f595446f2">_use_for_intersections</a>;</div><div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;    props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#ab2610addf8f227b9b9f00e9f275f6342">developable</a> = <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a81dad738f58f9b4632c1575d0b59ddb0">_developable</a>;</div><div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;    props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#a7df2aaba3b7824534100f46546d9479e">show_linesplan</a> = <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a373fd987b5f973a995517e7f97fda5ac">_show_in_linesplan</a>;</div><div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;    props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#a1d0c75ad5128b805bf99aab57212127f">material_density</a> = <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#adfdd4e996a5be7147a2eeb682dd93ff8">_material_density</a>;</div><div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;    props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#aeeae5cf44e195fe6f70d4f09a4fa3fef">thickness</a> = <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a00a308fdf03a0c1d9a6fa65f965e7942">_thickness</a>;</div><div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;    props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#a3175b253fd29d654cafe5b359f34a2b4">layer_properties</a> = <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#aee60763cd9524debb45f4a04e46676f2">getSurfaceProperties</a>();</div><div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;    <span class="keywordflow">return</span> props;</div><div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;}</div><div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;</div><div class="line"><a name="l00269"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#acee4a1fcdf3b2cbf3456ed3b81d66b8b">  269</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#acee4a1fcdf3b2cbf3456ed3b81d66b8b">SubdivisionLayer::setProperties</a>(<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html">LayerPropertiesForDialog</a>&amp; props)</div><div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;{</div><div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;    <span class="keywordtype">bool</span> changed = <span class="keyword">false</span>;</div><div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;    </div><div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;    props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#a0bcd4eb69a1b82c26e9dfcf1707cf850">data</a> = <span class="keyword">this</span>;</div><div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;    <span class="keywordflow">if</span> (props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#a09578942af620f75d1599887672ec8da">name</a> != <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a22eacfdf763840d534d45b18b789f8c7">getName</a>()) {</div><div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;        changed = <span class="keyword">true</span>;</div><div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a33bbfedf8f0d130d91c74a65a575eb2a">_desc</a> = props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#a09578942af620f75d1599887672ec8da">name</a>;</div><div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;    }</div><div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;    <span class="keywordflow">if</span> (props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#a20a555fd2c477f691cc04a4fe9b7f6b0">color</a> != <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a6da22248952737662360fa3b2730a35f">_color</a>) {</div><div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;        changed = <span class="keyword">true</span>;</div><div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a6da22248952737662360fa3b2730a35f">_color</a> = props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#a20a555fd2c477f691cc04a4fe9b7f6b0">color</a>;</div><div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;    }</div><div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;    <span class="keywordtype">double</span> alpha_int;</div><div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;    modf(props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#a8ecd6d4c933122d9f3c8f3c8fcf54781">alpha</a> * 255, &amp;alpha_int);</div><div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;    <span class="keywordflow">if</span> (alpha_int &gt;= 0 &amp;&amp; alpha_int &lt;= 255) {</div><div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;        <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> alpha = <span class="keyword">static_cast&lt;</span><span class="keywordtype">unsigned</span> <span class="keywordtype">int</span><span class="keyword">&gt;</span>(alpha_int);</div><div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;        <span class="keywordflow">if</span> (alpha != <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a1681170da038b0708d1b4dcd2ec89b81">_alphablend</a>) {</div><div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;            changed = <span class="keyword">true</span>;</div><div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;            <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a1681170da038b0708d1b4dcd2ec89b81">_alphablend</a> = alpha;</div><div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;        }</div><div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;    }</div><div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;    <span class="keywordflow">if</span> (props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#a2ac6ce1339e9dfc028016c5bacea3cae">hydrostatics</a> != <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#ad36d65882f0c46ff1b3ced7d48c173f4">_use_in_hydrostatics</a>) {</div><div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;        changed = <span class="keyword">true</span>;</div><div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#ad36d65882f0c46ff1b3ced7d48c173f4">_use_in_hydrostatics</a> = props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#a2ac6ce1339e9dfc028016c5bacea3cae">hydrostatics</a>;</div><div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;    }</div><div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;    <span class="keywordflow">if</span> (props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#a3acf39b44721d89ea8906052cc0bedde">symmetric</a> != <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#aaeddcdf1d08d84c76c5453f4a71fbe7a">_symmetric</a>) {</div><div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;        changed = <span class="keyword">true</span>;</div><div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#aaeddcdf1d08d84c76c5453f4a71fbe7a">_symmetric</a> = props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#a3acf39b44721d89ea8906052cc0bedde">symmetric</a>;</div><div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;    }</div><div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;    <span class="keywordflow">if</span> (props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#a6003cb18c39e66df709658c14203d066">intersection_curves</a> != <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a8213aa3e02493472fb11949f595446f2">_use_for_intersections</a>) {</div><div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a8213aa3e02493472fb11949f595446f2">_use_for_intersections</a> = props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#a6003cb18c39e66df709658c14203d066">intersection_curves</a>;</div><div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;        changed = <span class="keyword">true</span>;</div><div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;    }</div><div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;    <span class="keywordflow">if</span> (props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#ab2610addf8f227b9b9f00e9f275f6342">developable</a> != <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a81dad738f58f9b4632c1575d0b59ddb0">_developable</a>) {</div><div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a81dad738f58f9b4632c1575d0b59ddb0">_developable</a> = props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#ab2610addf8f227b9b9f00e9f275f6342">developable</a>;</div><div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;        changed = <span class="keyword">true</span>;</div><div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;    }</div><div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;    <span class="keywordflow">if</span> (props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#a7df2aaba3b7824534100f46546d9479e">show_linesplan</a> != <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a373fd987b5f973a995517e7f97fda5ac">_show_in_linesplan</a>) {</div><div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a373fd987b5f973a995517e7f97fda5ac">_show_in_linesplan</a> = props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#a7df2aaba3b7824534100f46546d9479e">show_linesplan</a>;</div><div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;        changed = <span class="keyword">true</span>;</div><div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;    }</div><div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;    <span class="keywordflow">if</span> (abs(props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#a1d0c75ad5128b805bf99aab57212127f">material_density</a> - <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#adfdd4e996a5be7147a2eeb682dd93ff8">_material_density</a>) &gt;= 1E-5) {</div><div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#adfdd4e996a5be7147a2eeb682dd93ff8">_material_density</a> = props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#a1d0c75ad5128b805bf99aab57212127f">material_density</a>;</div><div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;        changed = <span class="keyword">true</span>;</div><div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;    }</div><div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;    <span class="keywordflow">if</span> (abs(props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#aeeae5cf44e195fe6f70d4f09a4fa3fef">thickness</a> - <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a00a308fdf03a0c1d9a6fa65f965e7942">_thickness</a>) &gt;= 1E-5) {</div><div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a00a308fdf03a0c1d9a6fa65f965e7942">_thickness</a> = props.<a class="code" href="structShipCAD_1_1LayerPropertiesForDialog.html#aeeae5cf44e195fe6f70d4f09a4fa3fef">thickness</a>;</div><div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;        changed = <span class="keyword">true</span>;</div><div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;    }</div><div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;    <span class="keywordflow">return</span> changed;</div><div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;}</div><div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;</div><div class="line"><a name="l00322"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#ab2d11ebf60ad6edd818eb0c42971946c">  322</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#ab2d11ebf60ad6edd818eb0c42971946c">SubdivisionLayer::calculateIntersectionPoints</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html">SubdivisionLayer</a>* layer)</div><div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;{</div><div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;    <span class="keywordtype">bool</span> result = <span class="keyword">false</span>;</div><div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;    vector&lt;SubdivisionControlEdge*&gt; edges;</div><div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;    vector&lt;SubdivisionControlPoint*&gt; newpoints;</div><div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;</div><div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionControlPoint.html">SubdivisionControlPoint</a>* p1, *p2;</div><div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionControlEdge.html">SubdivisionControlEdge</a>* edge;</div><div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionControlFace.html">SubdivisionControlFace</a>* face;</div><div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;</div><div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;    <span class="comment">// assemble all controledges in a list</span></div><div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i=1; i&lt;=<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a98b25b86a7104e4f987d34506438113f">_patches</a>.size(); ++i) {</div><div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;        face = <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a98b25b86a7104e4f987d34506438113f">_patches</a>[i-1];</div><div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;        p1 = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classShipCAD_1_1SubdivisionControlPoint.html">SubdivisionControlPoint</a>*<span class="keyword">&gt;</span>(face-&gt;<a class="code" href="classShipCAD_1_1SubdivisionFace.html#a68bc7676c4f254ddb19e04f8cb5ba76f">getPoint</a>(face-&gt;<a class="code" href="classShipCAD_1_1SubdivisionFace.html#abd79b6dfadd10befe94b524a34063b27">numberOfPoints</a>()-1));</div><div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> j=1; j&lt;=face-&gt;<a class="code" href="classShipCAD_1_1SubdivisionFace.html#abd79b6dfadd10befe94b524a34063b27">numberOfPoints</a>(); ++j) {</div><div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;            p2 = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classShipCAD_1_1SubdivisionControlPoint.html">SubdivisionControlPoint</a>*<span class="keyword">&gt;</span>(face-&gt;<a class="code" href="classShipCAD_1_1SubdivisionFace.html#a68bc7676c4f254ddb19e04f8cb5ba76f">getPoint</a>(j-1));</div><div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;            edge = <a class="code" href="classShipCAD_1_1SubdivisionBase.html#a164481259436bf18bc22a0626ab66c09">_owner</a>-&gt;<a class="code" href="classShipCAD_1_1SubdivisionSurface.html#a6a89be4440e3adfcb0b14c164db891ae">controlEdgeExists</a>(p1, p2);</div><div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;            <span class="keywordflow">if</span> (edge != 0 &amp;&amp; find(edges.begin(), edges.end(), edge) == edges.end())</div><div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;                edges.push_back(edge);</div><div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;            p1 = p2;</div><div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;        }</div><div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;    }</div><div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;</div><div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;    <span class="comment">// now check all edges for intersection with layer 2</span></div><div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;    <span class="keywordtype">size_t</span> i = 1;</div><div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;    <span class="keywordflow">while</span> (i &lt;= edges.size()) {</div><div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;        edge = edges[i-1];</div><div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;        <span class="keywordtype">bool</span> intfound = <span class="keyword">false</span>;</div><div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;        <span class="keywordtype">size_t</span> j = 1;</div><div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;        <span class="keywordflow">while</span> (j &lt;= layer-&gt;<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#ad0d77de06b53814e248fc9bbfa908252">numberOfFaces</a>() &amp;&amp; !intfound) {</div><div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;            face = layer-&gt;<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a2e1538a000268fe5f56bf2bea4973c23">getFace</a>(j-1);</div><div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;            <span class="keywordtype">size_t</span> k = 1;</div><div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;            <span class="keywordflow">while</span> (k &lt;= face-&gt;numberOfChildren() &amp;&amp; !intfound) {</div><div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;                <a class="code" href="classShipCAD_1_1SubdivisionFace.html">SubdivisionFace</a>* child = face-&gt;<a class="code" href="classShipCAD_1_1SubdivisionControlFace.html#a6f015666ee5e626ce3aed4973f8d12a7">getChild</a>(k-1);</div><div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;                <span class="keywordtype">size_t</span> l = 3;</div><div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;                <span class="keywordflow">while</span> (l &lt;= child-&gt;numberOfPoints() &amp;&amp; !intfound) {</div><div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;                    <a class="code" href="classShipCAD_1_1Plane.html">Plane</a> pln(child-&gt;<a class="code" href="classShipCAD_1_1SubdivisionFace.html#a68bc7676c4f254ddb19e04f8cb5ba76f">getPoint</a>(0)-&gt;<a class="code" href="classShipCAD_1_1SubdivisionPoint.html#a285325115089a1b99be4480bf6079bf1">getCoordinate</a>(),</div><div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;                              child-&gt;<a class="code" href="classShipCAD_1_1SubdivisionFace.html#a68bc7676c4f254ddb19e04f8cb5ba76f">getPoint</a>(l-2)-&gt;<a class="code" href="classShipCAD_1_1SubdivisionPoint.html#a285325115089a1b99be4480bf6079bf1">getCoordinate</a>(),</div><div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;                              child-&gt;<a class="code" href="classShipCAD_1_1SubdivisionFace.html#a68bc7676c4f254ddb19e04f8cb5ba76f">getPoint</a>(l-1)-&gt;<a class="code" href="classShipCAD_1_1SubdivisionPoint.html#a285325115089a1b99be4480bf6079bf1">getCoordinate</a>());</div><div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;                    <span class="keywordtype">float</span> s1 = pln.<a class="code" href="classShipCAD_1_1Plane.html#a1105f3715d9593c0971e0b0959859a84">a</a>() * edge-&gt;<a class="code" href="classShipCAD_1_1SubdivisionEdge.html#aa6e28532f3ecc1610813844dfb385deb">startPoint</a>()-&gt;<a class="code" href="classShipCAD_1_1SubdivisionPoint.html#a285325115089a1b99be4480bf6079bf1">getCoordinate</a>().x()</div><div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;                            + pln.b() * edge-&gt;<a class="code" href="classShipCAD_1_1SubdivisionEdge.html#aa6e28532f3ecc1610813844dfb385deb">startPoint</a>()-&gt;<a class="code" href="classShipCAD_1_1SubdivisionPoint.html#a285325115089a1b99be4480bf6079bf1">getCoordinate</a>().y()</div><div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;                            + pln.c() * edge-&gt;<a class="code" href="classShipCAD_1_1SubdivisionEdge.html#aa6e28532f3ecc1610813844dfb385deb">startPoint</a>()-&gt;<a class="code" href="classShipCAD_1_1SubdivisionPoint.html#a285325115089a1b99be4480bf6079bf1">getCoordinate</a>().z()</div><div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;                            + pln.d();</div><div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;                    <span class="keywordtype">float</span> s2 = pln.a() * edge-&gt;<a class="code" href="classShipCAD_1_1SubdivisionEdge.html#aa65e2e10929c52fd05b6bb90317977dc">endPoint</a>()-&gt;<a class="code" href="classShipCAD_1_1SubdivisionPoint.html#a285325115089a1b99be4480bf6079bf1">getCoordinate</a>().x()</div><div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;                            + pln.b() * edge-&gt;<a class="code" href="classShipCAD_1_1SubdivisionEdge.html#aa65e2e10929c52fd05b6bb90317977dc">endPoint</a>()-&gt;<a class="code" href="classShipCAD_1_1SubdivisionPoint.html#a285325115089a1b99be4480bf6079bf1">getCoordinate</a>().y()</div><div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;                            + pln.c() * edge-&gt;<a class="code" href="classShipCAD_1_1SubdivisionEdge.html#aa65e2e10929c52fd05b6bb90317977dc">endPoint</a>()-&gt;<a class="code" href="classShipCAD_1_1SubdivisionPoint.html#a285325115089a1b99be4480bf6079bf1">getCoordinate</a>().z()</div><div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;                            + pln.d();</div><div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;                    <span class="keywordflow">if</span> ((s1 &lt; 0 &amp;&amp; s2 &gt; 0) || (s1 &gt; 0 &amp;&amp; s2 &lt; 0)) {</div><div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;                        <span class="comment">// edge intersects the plane, does it lie in the triangle?</span></div><div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;                        <span class="keywordtype">float</span> t;</div><div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;                        <span class="keywordflow">if</span> (s1 == s2)</div><div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;                            t = 0.5;</div><div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;                        <span class="keywordflow">else</span></div><div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;                            t = -s1 / (s2 - s1);</div><div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;                        QVector3D p3d = edge-&gt;<a class="code" href="classShipCAD_1_1SubdivisionEdge.html#aa6e28532f3ecc1610813844dfb385deb">startPoint</a>()-&gt;<a class="code" href="classShipCAD_1_1SubdivisionPoint.html#a285325115089a1b99be4480bf6079bf1">getCoordinate</a>()</div><div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;                                + t * (edge-&gt;<a class="code" href="classShipCAD_1_1SubdivisionEdge.html#aa65e2e10929c52fd05b6bb90317977dc">endPoint</a>()-&gt;<a class="code" href="classShipCAD_1_1SubdivisionPoint.html#a285325115089a1b99be4480bf6079bf1">getCoordinate</a>()</div><div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;                                       - edge-&gt;<a class="code" href="classShipCAD_1_1SubdivisionEdge.html#aa6e28532f3ecc1610813844dfb385deb">startPoint</a>()-&gt;<a class="code" href="classShipCAD_1_1SubdivisionPoint.html#a285325115089a1b99be4480bf6079bf1">getCoordinate</a>());</div><div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;                        <span class="keywordflow">if</span> (<a class="code" href="namespaceShipCAD.html#ae1773f0e415446342401a67430a8b643">PointInTriangle</a>(p3d, child-&gt;<a class="code" href="classShipCAD_1_1SubdivisionFace.html#a68bc7676c4f254ddb19e04f8cb5ba76f">getPoint</a>(0)-&gt;<a class="code" href="classShipCAD_1_1SubdivisionPoint.html#a285325115089a1b99be4480bf6079bf1">getCoordinate</a>(),</div><div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;                                            child-&gt;<a class="code" href="classShipCAD_1_1SubdivisionFace.html#a68bc7676c4f254ddb19e04f8cb5ba76f">getPoint</a>(l-2)-&gt;<a class="code" href="classShipCAD_1_1SubdivisionPoint.html#a285325115089a1b99be4480bf6079bf1">getCoordinate</a>(),</div><div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;                                            child-&gt;<a class="code" href="classShipCAD_1_1SubdivisionFace.html#a68bc7676c4f254ddb19e04f8cb5ba76f">getPoint</a>(l-1)-&gt;<a class="code" href="classShipCAD_1_1SubdivisionPoint.html#a285325115089a1b99be4480bf6079bf1">getCoordinate</a>())) {</div><div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;                            <span class="comment">// yes, valid intersection</span></div><div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;                            <a class="code" href="classShipCAD_1_1SubdivisionControlPoint.html">SubdivisionControlPoint</a>* p = edge-&gt;<a class="code" href="classShipCAD_1_1SubdivisionControlEdge.html#a4839a04d67e4240b570fd23be711bc10">insertControlPoint</a>(p3d);</div><div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;                            <span class="keywordflow">if</span> (p != 0) {</div><div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;                                intfound = <span class="keyword">true</span>;</div><div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;                                result = <span class="keyword">true</span>;</div><div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;                                newpoints.push_back(p);</div><div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;                            }</div><div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;                        }</div><div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;                    }</div><div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;                    l++;</div><div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;                }</div><div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;                k++;</div><div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;            }</div><div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;            j++;</div><div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;        }</div><div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;        i++;</div><div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;    }</div><div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;    <span class="keywordflow">if</span> (newpoints.size() &gt; 0) {</div><div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;        <span class="comment">// try to find multiple new points belonging to the same face and insert an edge</span></div><div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;restart:</div><div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;        <span class="keywordtype">size_t</span> i = 0;</div><div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;        edges.clear();</div><div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;        <span class="keywordtype">bool</span> inserted = <span class="keyword">false</span>;</div><div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;        <span class="keywordflow">while</span> (i &lt; newpoints.size()) {</div><div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;            p1 = newpoints[i];</div><div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;            <span class="keywordtype">size_t</span> j = 0;</div><div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;            <span class="keywordflow">while</span> (j &lt; p1-&gt;<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#ad0d77de06b53814e248fc9bbfa908252">numberOfFaces</a>()) {</div><div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;                face = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classShipCAD_1_1SubdivisionControlFace.html">SubdivisionControlFace</a>*<span class="keyword">&gt;</span>(p1-&gt;<a class="code" href="classShipCAD_1_1SubdivisionPoint.html#a348be9715813e54ce5895b551d46c67c">getFace</a>(j));</div><div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;                <span class="keywordtype">size_t</span> k = 0;</div><div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;                <span class="keywordflow">while</span> (k &lt; face-&gt;numberOfPoints() &amp;&amp; !inserted) {</div><div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;                    p2 = <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classShipCAD_1_1SubdivisionControlPoint.html">SubdivisionControlPoint</a>*<span class="keyword">&gt;</span>(face-&gt;<a class="code" href="classShipCAD_1_1SubdivisionFace.html#a68bc7676c4f254ddb19e04f8cb5ba76f">getPoint</a>(k));</div><div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;                    <span class="keywordflow">if</span> (p1 != p2 &amp;&amp; find(newpoints.begin(), newpoints.end(), p2) != newpoints.end()) {</div><div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;                        <span class="comment">// this is also a new point, first check if an edge already exists between p1 and p2</span></div><div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;                        <span class="keywordflow">if</span> (<a class="code" href="classShipCAD_1_1SubdivisionBase.html#a164481259436bf18bc22a0626ab66c09">_owner</a>-&gt;<a class="code" href="classShipCAD_1_1SubdivisionSurface.html#adfdeabdc19eb55a7ba4ab0b607207300">edgeExists</a>(p1, p2) == 0) {</div><div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;                            inserted = <span class="keyword">true</span>;</div><div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;                            <span class="keywordtype">bool</span> deleteface;</div><div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;                            edge = face-&gt;<a class="code" href="classShipCAD_1_1SubdivisionControlFace.html#a864eb7e746c2e057542efe14a4bba241">insertControlEdge</a>(p1, p2, deleteface);</div><div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;                            edge-&gt;<a class="code" href="classShipCAD_1_1SubdivisionControlEdge.html#ae247e08eec97952d1835df03c8269829">setSelected</a>(<span class="keyword">true</span>);</div><div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;                            edges.push_back(edge);</div><div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;                            <span class="comment">// if face has been deleted, restart the loop</span></div><div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;                            <span class="keywordflow">if</span> (deleteface) {</div><div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;                                <a class="code" href="classShipCAD_1_1SubdivisionBase.html#a0b9a68b5c7e6a20cf52a465f2387ffba">getOwner</a>()-&gt;<a class="code" href="classShipCAD_1_1SubdivisionSurface.html#a394c490440fb20c37abfc2f38d6e50fd">deleteControlFace</a>(face);</div><div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;                                <span class="keywordflow">goto</span> restart;</div><div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;                            }</div><div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;                        }</div><div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;                    }</div><div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;                    k++;</div><div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;                }</div><div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;                <span class="keywordflow">if</span> (!inserted)</div><div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;                    j++;</div><div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;            }</div><div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;            i++;</div><div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160;        }</div><div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;    }</div><div class="line"><a name="l00436"></a><span class="lineno">  436</span>&#160;    <span class="keywordflow">return</span> result;</div><div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;}</div><div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;</div><div class="line"><a name="l00439"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#a7046d17ba87dd5ce7399f22ae327fc6e">  439</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a7046d17ba87dd5ce7399f22ae327fc6e">SubdivisionLayer::clear</a>()</div><div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;{</div><div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a73e4956d179d6ebd6c062e7e76bca196">_layerid</a> = 0;</div><div class="line"><a name="l00442"></a><span class="lineno">  442</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a98b25b86a7104e4f987d34506438113f">_patches</a>.clear();</div><div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a6da22248952737662360fa3b2730a35f">_color</a> = <a class="code" href="classShipCAD_1_1SubdivisionBase.html#a164481259436bf18bc22a0626ab66c09">_owner</a>-&gt;<a class="code" href="classShipCAD_1_1SubdivisionSurface.html#adc7aff2be270c70963ddebbdc052b482">getLayerColor</a>();</div><div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a2d606476aba40bbbfc115c449f46ac26">_visible</a> = <span class="keyword">true</span>;</div><div class="line"><a name="l00445"></a><span class="lineno">  445</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a33bbfedf8f0d130d91c74a65a575eb2a">_desc</a> = <span class="stringliteral">&quot;&quot;</span>;</div><div class="line"><a name="l00446"></a><span class="lineno">  446</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#aaeddcdf1d08d84c76c5453f4a71fbe7a">_symmetric</a> = <span class="keyword">true</span>;</div><div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a81dad738f58f9b4632c1575d0b59ddb0">_developable</a> = <span class="keyword">false</span>;</div><div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a8213aa3e02493472fb11949f595446f2">_use_for_intersections</a> = <span class="keyword">true</span>;</div><div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#ad36d65882f0c46ff1b3ced7d48c173f4">_use_in_hydrostatics</a> = <span class="keyword">true</span>;</div><div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a373fd987b5f973a995517e7f97fda5ac">_show_in_linesplan</a> = <span class="keyword">true</span>;</div><div class="line"><a name="l00451"></a><span class="lineno">  451</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#adfdd4e996a5be7147a2eeb682dd93ff8">_material_density</a> = 0;</div><div class="line"><a name="l00452"></a><span class="lineno">  452</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a00a308fdf03a0c1d9a6fa65f965e7942">_thickness</a> = 0;</div><div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a1681170da038b0708d1b4dcd2ec89b81">_alphablend</a> = 255;</div><div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160;}</div><div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;</div><div class="line"><a name="l00456"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#a234cb1ed2e4a4fceb4c7701d0a56f42e">  456</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a234cb1ed2e4a4fceb4c7701d0a56f42e">SubdivisionLayer::releaseControlFace</a>(<a class="code" href="classShipCAD_1_1SubdivisionControlFace.html">SubdivisionControlFace</a>* face)</div><div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;{</div><div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;    vector&lt;SubdivisionControlFace*&gt;::iterator i = find(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a98b25b86a7104e4f987d34506438113f">_patches</a>.begin(), <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a98b25b86a7104e4f987d34506438113f">_patches</a>.end(), face);</div><div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;    <span class="keywordflow">if</span> (i != <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a98b25b86a7104e4f987d34506438113f">_patches</a>.end())</div><div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a98b25b86a7104e4f987d34506438113f">_patches</a>.erase(i);</div><div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;}</div><div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;</div><div class="line"><a name="l00463"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#a838537201ca31bc92a38585c87eb56e9">  463</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a838537201ca31bc92a38585c87eb56e9">SubdivisionLayer::drawLayers</a>(<a class="code" href="classShipCAD_1_1Viewport.html">Viewport</a>&amp; vp, <a class="code" href="classShipCAD_1_1SubdivisionSurface.html">SubdivisionSurface</a>* surface)</div><div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;{</div><div class="line"><a name="l00465"></a><span class="lineno">  465</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i=0; i&lt;surface-&gt;<a class="code" href="classShipCAD_1_1SubdivisionSurface.html#a011480014cfb68430c9f60aff474936c">numberOfLayers</a>(); ++i) {</div><div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html">SubdivisionLayer</a>* layer = surface-&gt;<a class="code" href="classShipCAD_1_1SubdivisionSurface.html#a24b230e51a0c5fb3e7f51d0e2340eb9f">getLayer</a>(i);</div><div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;        <span class="keywordflow">if</span> (layer-&gt;<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#adb65832883b6d2c88803d62edb48588b">isVisible</a>())</div><div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;            layer-&gt;<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a86f8600ffbf3973bc31c99bdb9e5b18d">draw</a>(vp);</div><div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160;    }</div><div class="line"><a name="l00470"></a><span class="lineno">  470</span>&#160;}</div><div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;</div><div class="line"><a name="l00472"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#a86f8600ffbf3973bc31c99bdb9e5b18d">  472</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a86f8600ffbf3973bc31c99bdb9e5b18d">SubdivisionLayer::draw</a>(<a class="code" href="classShipCAD_1_1Viewport.html">Viewport</a>&amp; vp)</div><div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;{</div><div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;    <span class="keywordflow">if</span> (!<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#adb65832883b6d2c88803d62edb48588b">isVisible</a>() || <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#ad0d77de06b53814e248fc9bbfa908252">numberOfFaces</a>() == 0)</div><div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;        <span class="keywordflow">return</span>;</div><div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160;    <span class="keywordflow">if</span> (vp.<a class="code" href="classShipCAD_1_1Viewport.html#a205e5082395c6d01660ffc179c57b83e">getViewportMode</a>() == <a class="code" href="namespaceShipCAD.html#a67437198ee14f74e6c5277d761894863aaf20984128d2e9697958fa8c329a801a">vmShadeGauss</a>) {</div><div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;        <a class="code" href="classShipCAD_1_1CurveFaceShader.html">CurveFaceShader</a>* shader = vp.<a class="code" href="classShipCAD_1_1Viewport.html#af4f3c9649b9d1af1b149048fc99aebe9">setCurveFaceShader</a>();</div><div class="line"><a name="l00478"></a><span class="lineno">  478</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i=0; i&lt;<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#ad0d77de06b53814e248fc9bbfa908252">numberOfFaces</a>(); ++i)</div><div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;            <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a2e1538a000268fe5f56bf2bea4973c23">getFace</a>(i)-&gt;<a class="code" href="classShipCAD_1_1SubdivisionControlFace.html#a925866e18c4dddade1e77121f0b2dfb0">drawCurvatureFaces</a>(shader,</div><div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;                                           <a class="code" href="classShipCAD_1_1SubdivisionBase.html#a164481259436bf18bc22a0626ab66c09">_owner</a>-&gt;<a class="code" href="classShipCAD_1_1SubdivisionSurface.html#a485f26282ac985446cdec3a98753c2eb">getMinGausCurvature</a>(),</div><div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;                                           <a class="code" href="classShipCAD_1_1SubdivisionBase.html#a164481259436bf18bc22a0626ab66c09">_owner</a>-&gt;<a class="code" href="classShipCAD_1_1SubdivisionSurface.html#a61fb5c6ccba4c5491ddcc69182213831">getMaxGausCurvature</a>());</div><div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;    }</div><div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;    <span class="keywordflow">else</span> <span class="keywordflow">if</span> (vp.<a class="code" href="classShipCAD_1_1Viewport.html#a205e5082395c6d01660ffc179c57b83e">getViewportMode</a>() == <a class="code" href="namespaceShipCAD.html#a67437198ee14f74e6c5277d761894863a85babb2fea8446064bbbf526b10bf36b">vmShadeDevelopable</a>) {</div><div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;        <a class="code" href="classShipCAD_1_1CurveFaceShader.html">CurveFaceShader</a>* shader = vp.<a class="code" href="classShipCAD_1_1Viewport.html#af4f3c9649b9d1af1b149048fc99aebe9">setCurveFaceShader</a>();</div><div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i=0; i&lt;<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#ad0d77de06b53814e248fc9bbfa908252">numberOfFaces</a>(); i++)</div><div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;            <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a2e1538a000268fe5f56bf2bea4973c23">getFace</a>(i)-&gt;<a class="code" href="classShipCAD_1_1SubdivisionControlFace.html#a00c3b9ec166796a0d9f21f2054a2cafd">drawDevelopableFaces</a>(shader);</div><div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;    }</div><div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;    <span class="keywordflow">else</span> <span class="keywordflow">if</span> (vp.<a class="code" href="classShipCAD_1_1Viewport.html#a205e5082395c6d01660ffc179c57b83e">getViewportMode</a>() == <a class="code" href="namespaceShipCAD.html#a67437198ee14f74e6c5277d761894863a70fcfa9199faab53e43f138ed64ad12f">vmShadeZebra</a>) {</div><div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;        <a class="code" href="classShipCAD_1_1CurveFaceShader.html">CurveFaceShader</a>* shader = vp.<a class="code" href="classShipCAD_1_1Viewport.html#af4f3c9649b9d1af1b149048fc99aebe9">setCurveFaceShader</a>();</div><div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i=0; i&lt;<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#ad0d77de06b53814e248fc9bbfa908252">numberOfFaces</a>(); i++)</div><div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;            <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a2e1538a000268fe5f56bf2bea4973c23">getFace</a>(i)-&gt;<a class="code" href="classShipCAD_1_1SubdivisionControlFace.html#a0816cbcc14608e95b2013c80cad80bc8">drawZebraFaces</a>(vp, shader);</div><div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;    }</div><div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;    <span class="keywordflow">else</span> <span class="keywordflow">if</span> (vp.<a class="code" href="classShipCAD_1_1Viewport.html#a205e5082395c6d01660ffc179c57b83e">getViewportMode</a>() == <a class="code" href="namespaceShipCAD.html#a67437198ee14f74e6c5277d761894863ab1258f959e2d114750dffb3f9c2e2c0c">vmShade</a>) {</div><div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;        <a class="code" href="classShipCAD_1_1FaceShader.html">FaceShader</a>* shader = vp.<a class="code" href="classShipCAD_1_1Viewport.html#a03cc2ed85178b9735c80b11dceb470b5">setLightedFaceShader</a>();</div><div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i=0; i&lt;<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#ad0d77de06b53814e248fc9bbfa908252">numberOfFaces</a>(); ++i)</div><div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;            <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a2e1538a000268fe5f56bf2bea4973c23">getFace</a>(i)-&gt;<a class="code" href="classShipCAD_1_1SubdivisionControlFace.html#a45d5155a450040671ffba6cc691c79d7">drawFaces</a>(vp, shader);</div><div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;    }</div><div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;    <span class="keywordflow">else</span> <span class="keywordflow">if</span> (vp.<a class="code" href="classShipCAD_1_1Viewport.html#a205e5082395c6d01660ffc179c57b83e">getViewportMode</a>() == <a class="code" href="namespaceShipCAD.html#a67437198ee14f74e6c5277d761894863a109cd328af19be260371a7e5333043f8">vmWireFrame</a>) {</div><div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;        <a class="code" href="classShipCAD_1_1LineShader.html">LineShader</a>* lineshader = vp.<a class="code" href="classShipCAD_1_1Viewport.html#a0720a01f8650dc4acf89aad0649d9196">setLineShader</a>();</div><div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="classShipCAD_1_1SubdivisionBase.html#a164481259436bf18bc22a0626ab66c09">_owner</a>-&gt;<a class="code" href="classShipCAD_1_1SubdivisionSurface.html#a4cfec985803a6cc41b3afecb2e81ede5">showInteriorEdges</a>()) {</div><div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;            <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i=0; i&lt;<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#ad0d77de06b53814e248fc9bbfa908252">numberOfFaces</a>(); ++i)</div><div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;                <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a2e1538a000268fe5f56bf2bea4973c23">getFace</a>(i)-&gt;<a class="code" href="classShipCAD_1_1SubdivisionControlFace.html#ac253493bccd91108d936b651e72b46f8">draw</a>(vp, lineshader);</div><div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;        }</div><div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;        <span class="comment">// draw all interior crease-edges</span></div><div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i=0; i&lt;<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#ad0d77de06b53814e248fc9bbfa908252">numberOfFaces</a>(); ++i) {</div><div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;            <a class="code" href="classShipCAD_1_1SubdivisionControlFace.html">SubdivisionControlFace</a>* face = <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a2e1538a000268fe5f56bf2bea4973c23">getFace</a>(i);</div><div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;            <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> j=0; j&lt;face-&gt;<a class="code" href="classShipCAD_1_1SubdivisionControlFace.html#a3f2351019487ed20295fa8c7995b9416">numberOfControlEdges</a>(); ++j) {</div><div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;                <a class="code" href="classShipCAD_1_1SubdivisionEdge.html">SubdivisionEdge</a>* edge = face-&gt;<a class="code" href="classShipCAD_1_1SubdivisionControlFace.html#a5c149807dc5891e23b463c4251e707f5">getControlEdge</a>(j);</div><div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;                <span class="keywordflow">if</span> (edge-&gt;<a class="code" href="classShipCAD_1_1SubdivisionEdge.html#ae649fe7169f64a8e5ede1fbb36a176fa">isCrease</a>())</div><div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;                    edge-&gt;<a class="code" href="classShipCAD_1_1SubdivisionEdge.html#a26deda12672fa679b49b28f2371e728b">draw</a>(<a class="code" href="classShipCAD_1_1SubdivisionBase.html#a164481259436bf18bc22a0626ab66c09">_owner</a>-&gt;<a class="code" href="classShipCAD_1_1SubdivisionSurface.html#a42b3e7703acd8d51c501d7c47f09ed78">drawMirror</a>() &amp;&amp; <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#af1d37cf069e050828f42c034ada4661e">isSymmetric</a>(), vp, lineshader,</div><div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;                               <a class="code" href="classShipCAD_1_1SubdivisionBase.html#a164481259436bf18bc22a0626ab66c09">_owner</a>-&gt;<a class="code" href="classShipCAD_1_1SubdivisionSurface.html#adbe8035c1602e8b2462e6052ffd3f3a4">getCreaseColor</a>());</div><div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;            }</div><div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;        }</div><div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;    }</div><div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;}</div><div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;</div><div class="line"><a name="l00517"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#a2fc3ac326021a97479b821331e295640">  517</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a2fc3ac326021a97479b821331e295640">SubdivisionLayer::extents</a>(QVector3D&amp; min, QVector3D&amp; max)</div><div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;{</div><div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;    <span class="keywordflow">if</span> (<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#adb65832883b6d2c88803d62edb48588b">isVisible</a>()) {</div><div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i=0; i&lt;<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#ad0d77de06b53814e248fc9bbfa908252">numberOfFaces</a>(); ++i) {</div><div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;            <a class="code" href="classShipCAD_1_1SubdivisionControlFace.html">SubdivisionControlFace</a>* face = <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a98b25b86a7104e4f987d34506438113f">_patches</a>[i];</div><div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;            <a class="code" href="namespaceShipCAD.html#aa5d3fc63603d716d3e24244049e1e510">MinMax</a>(face-&gt;<a class="code" href="classShipCAD_1_1SubdivisionControlFace.html#a9e205ab09b4660ab2b5377afaa620cd6">getMin</a>(), min, max);</div><div class="line"><a name="l00523"></a><span class="lineno">  523</span>&#160;            <a class="code" href="namespaceShipCAD.html#aa5d3fc63603d716d3e24244049e1e510">MinMax</a>(face-&gt;<a class="code" href="classShipCAD_1_1SubdivisionControlFace.html#a58ee183f9aef669fe96ccf36789999c2">getMax</a>(), min, max);</div><div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160;            <span class="keywordflow">if</span> (<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#af1d37cf069e050828f42c034ada4661e">isSymmetric</a>() &amp;&amp; <a class="code" href="classShipCAD_1_1SubdivisionBase.html#a164481259436bf18bc22a0626ab66c09">_owner</a>-&gt;<a class="code" href="classShipCAD_1_1SubdivisionSurface.html#a42b3e7703acd8d51c501d7c47f09ed78">drawMirror</a>()) {</div><div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;                QVector3D p = face-&gt;<a class="code" href="classShipCAD_1_1SubdivisionControlFace.html#a9e205ab09b4660ab2b5377afaa620cd6">getMin</a>();</div><div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;                p.setY(-p.y());</div><div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;                <a class="code" href="namespaceShipCAD.html#aa5d3fc63603d716d3e24244049e1e510">MinMax</a>(p, min, max);</div><div class="line"><a name="l00528"></a><span class="lineno">  528</span>&#160;                p = face-&gt;<a class="code" href="classShipCAD_1_1SubdivisionControlFace.html#a58ee183f9aef669fe96ccf36789999c2">getMax</a>();</div><div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160;                p.setY(-p.y());</div><div class="line"><a name="l00530"></a><span class="lineno">  530</span>&#160;                <a class="code" href="namespaceShipCAD.html#aa5d3fc63603d716d3e24244049e1e510">MinMax</a>(p, min, max);</div><div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;            }</div><div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160;        }</div><div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;    }</div><div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160;}</div><div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;</div><div class="line"><a name="l00536"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#a716ee3981e86d5171f392bbee9b7a9da">  536</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a716ee3981e86d5171f392bbee9b7a9da">SubdivisionLayer::unroll</a>(<a class="code" href="classPointerVector.html">PointerVector&lt;DevelopedPatch&gt;</a>&amp; destination)</div><div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;{</div><div class="line"><a name="l00538"></a><span class="lineno">  538</span>&#160;    vector&lt;SubdivisionControlFace*&gt; todo(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a98b25b86a7104e4f987d34506438113f">_patches</a>.begin(), <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a98b25b86a7104e4f987d34506438113f">_patches</a>.end());</div><div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;    vector&lt;vector&lt;SubdivisionControlFace*&gt; &gt; done;</div><div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160;</div><div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160;    <span class="keywordflow">while</span> (todo.size() &gt; 0) {</div><div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionControlFace.html">SubdivisionControlFace</a>* face = todo.back();</div><div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;        todo.pop_back();</div><div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160;        vector&lt;SubdivisionControlFace*&gt; current;</div><div class="line"><a name="l00545"></a><span class="lineno">  545</span>&#160;        current.push_back(face);</div><div class="line"><a name="l00546"></a><span class="lineno">  546</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#abc2dc45d2e93e536cf198b31d8258201">findAttachedFaces</a>(current, face, todo);</div><div class="line"><a name="l00547"></a><span class="lineno">  547</span>&#160;        done.push_back(current);</div><div class="line"><a name="l00548"></a><span class="lineno">  548</span>&#160;    }</div><div class="line"><a name="l00549"></a><span class="lineno">  549</span>&#160;    <span class="comment">// unroll each separate surface area</span></div><div class="line"><a name="l00550"></a><span class="lineno">  550</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i=0; i&lt;done.size(); i++) {</div><div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160;        vector&lt;SubdivisionControlFace*&gt;&amp; current = done[i];</div><div class="line"><a name="l00552"></a><span class="lineno">  552</span>&#160;        <span class="keywordflow">if</span> (current.size() &gt; 0) {</div><div class="line"><a name="l00553"></a><span class="lineno">  553</span>&#160;            <a class="code" href="classShipCAD_1_1DevelopedPatch.html">DevelopedPatch</a>* patch = <span class="keyword">new</span> <a class="code" href="classShipCAD_1_1DevelopedPatch.html">DevelopedPatch</a>(<span class="keyword">this</span>);</div><div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;            patch-&gt;<a class="code" href="classShipCAD_1_1DevelopedPatch.html#a55470422ecac9d544c811eddc8c3d1c1">unroll</a>(current);</div><div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;            QString str;</div><div class="line"><a name="l00556"></a><span class="lineno">  556</span>&#160;            <span class="keywordflow">if</span> (done.size() == 1)</div><div class="line"><a name="l00557"></a><span class="lineno">  557</span>&#160;                str = <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a22eacfdf763840d534d45b18b789f8c7">getName</a>();</div><div class="line"><a name="l00558"></a><span class="lineno">  558</span>&#160;            <span class="keywordflow">else</span></div><div class="line"><a name="l00559"></a><span class="lineno">  559</span>&#160;                str = QString(<span class="stringliteral">&quot;%1 %2 %3&quot;</span>).arg(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a22eacfdf763840d534d45b18b789f8c7">getName</a>()).arg(<span class="stringliteral">&quot;Part&quot;</span>).arg(i+1);</div><div class="line"><a name="l00560"></a><span class="lineno">  560</span>&#160;            patch-&gt;<a class="code" href="classShipCAD_1_1DevelopedPatch.html#a3ddb91773f49fa342f1fed811cd329f2">setName</a>(str);</div><div class="line"><a name="l00561"></a><span class="lineno">  561</span>&#160;            destination.<a class="code" href="classPointerVector.html#abaee9f77dee6ea2523dff64b184c9f54">add</a>(patch);</div><div class="line"><a name="l00562"></a><span class="lineno">  562</span>&#160;            <span class="keywordflow">if</span> (!patch-&gt;<a class="code" href="classShipCAD_1_1DevelopedPatch.html#ae2a022f78ac1345f6ede335b32eadeb1">isMirror</a>() &amp;&amp; <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#af1d37cf069e050828f42c034ada4661e">isSymmetric</a>()) {</div><div class="line"><a name="l00563"></a><span class="lineno">  563</span>&#160;                QString nm(str);</div><div class="line"><a name="l00564"></a><span class="lineno">  564</span>&#160;                nm += <span class="stringliteral">&quot; (SB)&quot;</span>;</div><div class="line"><a name="l00565"></a><span class="lineno">  565</span>&#160;                patch-&gt;<a class="code" href="classShipCAD_1_1DevelopedPatch.html#a3ddb91773f49fa342f1fed811cd329f2">setName</a>(nm);</div><div class="line"><a name="l00566"></a><span class="lineno">  566</span>&#160;                <a class="code" href="classShipCAD_1_1DevelopedPatch.html">DevelopedPatch</a>* copy = <span class="keyword">new</span> <a class="code" href="classShipCAD_1_1DevelopedPatch.html">DevelopedPatch</a>(<span class="keyword">this</span>);</div><div class="line"><a name="l00567"></a><span class="lineno">  567</span>&#160;                QString nm1(str);</div><div class="line"><a name="l00568"></a><span class="lineno">  568</span>&#160;                nm1 += <span class="stringliteral">&quot; (P)&quot;</span>;</div><div class="line"><a name="l00569"></a><span class="lineno">  569</span>&#160;                copy-&gt;<a class="code" href="classShipCAD_1_1DevelopedPatch.html#a3ddb91773f49fa342f1fed811cd329f2">setName</a>(nm1);</div><div class="line"><a name="l00570"></a><span class="lineno">  570</span>&#160;                destination.<a class="code" href="classPointerVector.html#abaee9f77dee6ea2523dff64b184c9f54">add</a>(copy);</div><div class="line"><a name="l00571"></a><span class="lineno">  571</span>&#160;            }</div><div class="line"><a name="l00572"></a><span class="lineno">  572</span>&#160;        }</div><div class="line"><a name="l00573"></a><span class="lineno">  573</span>&#160;    }</div><div class="line"><a name="l00574"></a><span class="lineno">  574</span>&#160;}</div><div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;</div><div class="line"><a name="l00576"></a><span class="lineno">  576</span>&#160;<span class="comment">// FreeGeometry.pas:9456</span></div><div class="line"><a name="l00577"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#abc2dc45d2e93e536cf198b31d8258201">  577</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#abc2dc45d2e93e536cf198b31d8258201">SubdivisionLayer::findAttachedFaces</a>(vector&lt;SubdivisionControlFace*&gt;&amp; list,</div><div class="line"><a name="l00578"></a><span class="lineno">  578</span>&#160;                                         <a class="code" href="classShipCAD_1_1SubdivisionControlFace.html">SubdivisionControlFace</a>* face,</div><div class="line"><a name="l00579"></a><span class="lineno">  579</span>&#160;                                         vector&lt;SubdivisionControlFace*&gt;&amp; todo)</div><div class="line"><a name="l00580"></a><span class="lineno">  580</span>&#160;{</div><div class="line"><a name="l00581"></a><span class="lineno">  581</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionPoint.html">SubdivisionPoint</a>* p1 = face-&gt;<a class="code" href="classShipCAD_1_1SubdivisionFace.html#a68bc7676c4f254ddb19e04f8cb5ba76f">getPoint</a>(face-&gt;<a class="code" href="classShipCAD_1_1SubdivisionFace.html#abd79b6dfadd10befe94b524a34063b27">numberOfPoints</a>() - 1);</div><div class="line"><a name="l00582"></a><span class="lineno">  582</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i=0; i&lt;face-&gt;<a class="code" href="classShipCAD_1_1SubdivisionFace.html#abd79b6dfadd10befe94b524a34063b27">numberOfPoints</a>(); i++) {</div><div class="line"><a name="l00583"></a><span class="lineno">  583</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionPoint.html">SubdivisionPoint</a>* p2 = face-&gt;<a class="code" href="classShipCAD_1_1SubdivisionFace.html#a68bc7676c4f254ddb19e04f8cb5ba76f">getPoint</a>(i);</div><div class="line"><a name="l00584"></a><span class="lineno">  584</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionEdge.html">SubdivisionEdge</a>* edge = face-&gt;<a class="code" href="classShipCAD_1_1SubdivisionBase.html#a0b9a68b5c7e6a20cf52a465f2387ffba">getOwner</a>()-&gt;<a class="code" href="classShipCAD_1_1SubdivisionSurface.html#adfdeabdc19eb55a7ba4ab0b607207300">edgeExists</a>(p1, p2);</div><div class="line"><a name="l00585"></a><span class="lineno">  585</span>&#160;        <span class="keywordflow">if</span> (edge != 0) {</div><div class="line"><a name="l00586"></a><span class="lineno">  586</span>&#160;            <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> j=0; j&lt;edge-&gt;<a class="code" href="classShipCAD_1_1SubdivisionEdge.html#ac4004284f7ab47437b9a1fe7adbde70d">numberOfFaces</a>(); j++) {</div><div class="line"><a name="l00587"></a><span class="lineno">  587</span>&#160;                <span class="keywordflow">if</span> (edge-&gt;<a class="code" href="classShipCAD_1_1SubdivisionEdge.html#afe3de434f13adfde22f2c209197902de">getFace</a>(j) != face) {</div><div class="line"><a name="l00588"></a><span class="lineno">  588</span>&#160;                    vector&lt;SubdivisionControlFace*&gt;::iterator index = find(</div><div class="line"><a name="l00589"></a><span class="lineno">  589</span>&#160;                        todo.begin(), todo.end(), edge-&gt;<a class="code" href="classShipCAD_1_1SubdivisionEdge.html#afe3de434f13adfde22f2c209197902de">getFace</a>(j));</div><div class="line"><a name="l00590"></a><span class="lineno">  590</span>&#160;                    <span class="keywordflow">if</span> (index != todo.end()) {</div><div class="line"><a name="l00591"></a><span class="lineno">  591</span>&#160;                        <a class="code" href="classShipCAD_1_1SubdivisionControlFace.html">SubdivisionControlFace</a>* cface =</div><div class="line"><a name="l00592"></a><span class="lineno">  592</span>&#160;                            <span class="keyword">dynamic_cast&lt;</span><a class="code" href="classShipCAD_1_1SubdivisionControlFace.html">SubdivisionControlFace</a>*<span class="keyword">&gt;</span>(edge-&gt;<a class="code" href="classShipCAD_1_1SubdivisionEdge.html#afe3de434f13adfde22f2c209197902de">getFace</a>(j));</div><div class="line"><a name="l00593"></a><span class="lineno">  593</span>&#160;                        list.push_back(cface);</div><div class="line"><a name="l00594"></a><span class="lineno">  594</span>&#160;                        todo.erase(index);</div><div class="line"><a name="l00595"></a><span class="lineno">  595</span>&#160;                        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#abc2dc45d2e93e536cf198b31d8258201">findAttachedFaces</a>(list, cface, todo);</div><div class="line"><a name="l00596"></a><span class="lineno">  596</span>&#160;                    }</div><div class="line"><a name="l00597"></a><span class="lineno">  597</span>&#160;                }</div><div class="line"><a name="l00598"></a><span class="lineno">  598</span>&#160;            }</div><div class="line"><a name="l00599"></a><span class="lineno">  599</span>&#160;        }</div><div class="line"><a name="l00600"></a><span class="lineno">  600</span>&#160;        p1 = p2;</div><div class="line"><a name="l00601"></a><span class="lineno">  601</span>&#160;    }</div><div class="line"><a name="l00602"></a><span class="lineno">  602</span>&#160;}</div><div class="line"><a name="l00603"></a><span class="lineno">  603</span>&#160;</div><div class="line"><a name="l00604"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#a060357b84c0549fa7310e45680fed9bd">  604</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a060357b84c0549fa7310e45680fed9bd">SubdivisionLayer::loadBinary</a>(<a class="code" href="classShipCAD_1_1FileBuffer.html">FileBuffer</a>&amp; source)</div><div class="line"><a name="l00605"></a><span class="lineno">  605</span>&#160;{</div><div class="line"><a name="l00606"></a><span class="lineno">  606</span>&#160;    source.<a class="code" href="classShipCAD_1_1FileBuffer.html#a86223c54bcf111ef205c9d651e0b9a66">load</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a33bbfedf8f0d130d91c74a65a575eb2a">_desc</a>);</div><div class="line"><a name="l00607"></a><span class="lineno">  607</span>&#160;    quint32 n;</div><div class="line"><a name="l00608"></a><span class="lineno">  608</span>&#160;    source.<a class="code" href="classShipCAD_1_1FileBuffer.html#a86223c54bcf111ef205c9d651e0b9a66">load</a>(n);</div><div class="line"><a name="l00609"></a><span class="lineno">  609</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a73e4956d179d6ebd6c062e7e76bca196">_layerid</a> = n;</div><div class="line"><a name="l00610"></a><span class="lineno">  610</span>&#160;    <span class="keywordflow">if</span> (<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a73e4956d179d6ebd6c062e7e76bca196">_layerid</a> &gt; <a class="code" href="classShipCAD_1_1SubdivisionBase.html#a164481259436bf18bc22a0626ab66c09">_owner</a>-&gt;<a class="code" href="classShipCAD_1_1SubdivisionSurface.html#ac1efd2774e8a7e646468154ed5480f94">lastUsedLayerID</a>())</div><div class="line"><a name="l00611"></a><span class="lineno">  611</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionBase.html#a164481259436bf18bc22a0626ab66c09">_owner</a>-&gt;<a class="code" href="classShipCAD_1_1SubdivisionSurface.html#aa72a8cf7c5bddaaf24ec41ad3480fe70">setLastUsedLayerID</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a73e4956d179d6ebd6c062e7e76bca196">_layerid</a>);</div><div class="line"><a name="l00612"></a><span class="lineno">  612</span>&#160;    source.<a class="code" href="classShipCAD_1_1FileBuffer.html#a86223c54bcf111ef205c9d651e0b9a66">load</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a6da22248952737662360fa3b2730a35f">_color</a>);</div><div class="line"><a name="l00613"></a><span class="lineno">  613</span>&#160;    source.<a class="code" href="classShipCAD_1_1FileBuffer.html#a86223c54bcf111ef205c9d651e0b9a66">load</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a2d606476aba40bbbfc115c449f46ac26">_visible</a>);</div><div class="line"><a name="l00614"></a><span class="lineno">  614</span>&#160;    source.<a class="code" href="classShipCAD_1_1FileBuffer.html#a86223c54bcf111ef205c9d651e0b9a66">load</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#aaeddcdf1d08d84c76c5453f4a71fbe7a">_symmetric</a>);</div><div class="line"><a name="l00615"></a><span class="lineno">  615</span>&#160;    source.<a class="code" href="classShipCAD_1_1FileBuffer.html#a86223c54bcf111ef205c9d651e0b9a66">load</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a81dad738f58f9b4632c1575d0b59ddb0">_developable</a>);</div><div class="line"><a name="l00616"></a><span class="lineno">  616</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#adfdd4e996a5be7147a2eeb682dd93ff8">_material_density</a> = 0;</div><div class="line"><a name="l00617"></a><span class="lineno">  617</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a00a308fdf03a0c1d9a6fa65f965e7942">_thickness</a> = 0;</div><div class="line"><a name="l00618"></a><span class="lineno">  618</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a8213aa3e02493472fb11949f595446f2">_use_for_intersections</a> = <span class="keyword">true</span>;</div><div class="line"><a name="l00619"></a><span class="lineno">  619</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#ad36d65882f0c46ff1b3ced7d48c173f4">_use_in_hydrostatics</a> = <span class="keyword">true</span>;</div><div class="line"><a name="l00620"></a><span class="lineno">  620</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a373fd987b5f973a995517e7f97fda5ac">_show_in_linesplan</a> = <span class="keyword">true</span>;</div><div class="line"><a name="l00621"></a><span class="lineno">  621</span>&#160;    <span class="keywordflow">if</span> (source.<a class="code" href="classShipCAD_1_1FileBuffer.html#a06f87b30f5fd091cc5c270964ea16770">getVersion</a>() &gt;= <a class="code" href="namespaceShipCAD.html#af3a6fa23a7318acbda7b0066b53d694fad37dee2f48dd8e2dacbb6ffb3928c7ea">fv180</a>) {</div><div class="line"><a name="l00622"></a><span class="lineno">  622</span>&#160;        source.<a class="code" href="classShipCAD_1_1FileBuffer.html#a86223c54bcf111ef205c9d651e0b9a66">load</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a8213aa3e02493472fb11949f595446f2">_use_for_intersections</a>);</div><div class="line"><a name="l00623"></a><span class="lineno">  623</span>&#160;        source.<a class="code" href="classShipCAD_1_1FileBuffer.html#a86223c54bcf111ef205c9d651e0b9a66">load</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#ad36d65882f0c46ff1b3ced7d48c173f4">_use_in_hydrostatics</a>);</div><div class="line"><a name="l00624"></a><span class="lineno">  624</span>&#160;        <span class="keywordflow">if</span> (source.<a class="code" href="classShipCAD_1_1FileBuffer.html#a06f87b30f5fd091cc5c270964ea16770">getVersion</a>() &gt;= <a class="code" href="namespaceShipCAD.html#af3a6fa23a7318acbda7b0066b53d694fa155bf0424294686430a251fed7e7cb83">fv191</a>) {</div><div class="line"><a name="l00625"></a><span class="lineno">  625</span>&#160;            source.<a class="code" href="classShipCAD_1_1FileBuffer.html#a86223c54bcf111ef205c9d651e0b9a66">load</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#adfdd4e996a5be7147a2eeb682dd93ff8">_material_density</a>);</div><div class="line"><a name="l00626"></a><span class="lineno">  626</span>&#160;            source.<a class="code" href="classShipCAD_1_1FileBuffer.html#a86223c54bcf111ef205c9d651e0b9a66">load</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a00a308fdf03a0c1d9a6fa65f965e7942">_thickness</a>);</div><div class="line"><a name="l00627"></a><span class="lineno">  627</span>&#160;            <span class="keywordflow">if</span> (source.<a class="code" href="classShipCAD_1_1FileBuffer.html#a06f87b30f5fd091cc5c270964ea16770">getVersion</a>() &gt;= <a class="code" href="namespaceShipCAD.html#af3a6fa23a7318acbda7b0066b53d694fadfb6c2f915e2ab1d0a40f8c83a04748d">fv201</a>) {</div><div class="line"><a name="l00628"></a><span class="lineno">  628</span>&#160;                source.<a class="code" href="classShipCAD_1_1FileBuffer.html#a86223c54bcf111ef205c9d651e0b9a66">load</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a373fd987b5f973a995517e7f97fda5ac">_show_in_linesplan</a>);</div><div class="line"><a name="l00629"></a><span class="lineno">  629</span>&#160;                <span class="keywordflow">if</span> (source.<a class="code" href="classShipCAD_1_1FileBuffer.html#a06f87b30f5fd091cc5c270964ea16770">getVersion</a>() &gt;= <a class="code" href="namespaceShipCAD.html#af3a6fa23a7318acbda7b0066b53d694fa3e815680f28b362a51b70712e376e7d7">fv260</a>) {</div><div class="line"><a name="l00630"></a><span class="lineno">  630</span>&#160;                    quint32 i;</div><div class="line"><a name="l00631"></a><span class="lineno">  631</span>&#160;                    source.<a class="code" href="classShipCAD_1_1FileBuffer.html#a86223c54bcf111ef205c9d651e0b9a66">load</a>(i);</div><div class="line"><a name="l00632"></a><span class="lineno">  632</span>&#160;                    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a1681170da038b0708d1b4dcd2ec89b81">_alphablend</a> = i;</div><div class="line"><a name="l00633"></a><span class="lineno">  633</span>&#160;                }</div><div class="line"><a name="l00634"></a><span class="lineno">  634</span>&#160;            }</div><div class="line"><a name="l00635"></a><span class="lineno">  635</span>&#160;        }</div><div class="line"><a name="l00636"></a><span class="lineno">  636</span>&#160;    }</div><div class="line"><a name="l00637"></a><span class="lineno">  637</span>&#160;}</div><div class="line"><a name="l00638"></a><span class="lineno">  638</span>&#160;</div><div class="line"><a name="l00639"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#adf79f2412e399763bf1915d10f2f2a0a">  639</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#adf79f2412e399763bf1915d10f2f2a0a">SubdivisionLayer::loadFromStream</a>(<span class="keywordtype">size_t</span> &amp;lineno, QStringList &amp;strings)</div><div class="line"><a name="l00640"></a><span class="lineno">  640</span>&#160;{</div><div class="line"><a name="l00641"></a><span class="lineno">  641</span>&#160;    <span class="comment">// read description</span></div><div class="line"><a name="l00642"></a><span class="lineno">  642</span>&#160;    QString str = strings[lineno++].trimmed();</div><div class="line"><a name="l00643"></a><span class="lineno">  643</span>&#160;    <span class="keywordtype">size_t</span> start = 0;</div><div class="line"><a name="l00644"></a><span class="lineno">  644</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a33bbfedf8f0d130d91c74a65a575eb2a">_desc</a> = str;</div><div class="line"><a name="l00645"></a><span class="lineno">  645</span>&#160;    <span class="comment">// read layer identification</span></div><div class="line"><a name="l00646"></a><span class="lineno">  646</span>&#160;    str = strings[lineno++].trimmed();</div><div class="line"><a name="l00647"></a><span class="lineno">  647</span>&#160;    start = 0;</div><div class="line"><a name="l00648"></a><span class="lineno">  648</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a73e4956d179d6ebd6c062e7e76bca196">_layerid</a> = <a class="code" href="namespaceShipCAD.html#a70b238d926183460670b82d9680b5cb9">ReadIntFromStr</a>(lineno, str, start);</div><div class="line"><a name="l00649"></a><span class="lineno">  649</span>&#160;    <span class="keywordflow">if</span> (<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a73e4956d179d6ebd6c062e7e76bca196">_layerid</a> &gt; <a class="code" href="classShipCAD_1_1SubdivisionBase.html#a164481259436bf18bc22a0626ab66c09">_owner</a>-&gt;<a class="code" href="classShipCAD_1_1SubdivisionSurface.html#ac1efd2774e8a7e646468154ed5480f94">lastUsedLayerID</a>())</div><div class="line"><a name="l00650"></a><span class="lineno">  650</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionBase.html#a164481259436bf18bc22a0626ab66c09">_owner</a>-&gt;<a class="code" href="classShipCAD_1_1SubdivisionSurface.html#aa72a8cf7c5bddaaf24ec41ad3480fe70">setLastUsedLayerID</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a73e4956d179d6ebd6c062e7e76bca196">_layerid</a>);</div><div class="line"><a name="l00651"></a><span class="lineno">  651</span>&#160;    <span class="comment">// read color</span></div><div class="line"><a name="l00652"></a><span class="lineno">  652</span>&#160;    <span class="keywordtype">int</span> col = <a class="code" href="namespaceShipCAD.html#a70b238d926183460670b82d9680b5cb9">ReadIntFromStr</a>(lineno, str, start);</div><div class="line"><a name="l00653"></a><span class="lineno">  653</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a6da22248952737662360fa3b2730a35f">_color</a> = <a class="code" href="namespaceShipCAD.html#a9956eca83968462fc4c48c376a10d577">QColorFromDXFIndex</a>(col);</div><div class="line"><a name="l00654"></a><span class="lineno">  654</span>&#160;    <span class="comment">// read visible</span></div><div class="line"><a name="l00655"></a><span class="lineno">  655</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a2d606476aba40bbbfc115c449f46ac26">_visible</a> = <a class="code" href="namespaceShipCAD.html#af343b5a2dfd09b32b9451d35e0676384">ReadBoolFromStr</a>(lineno, str, start);</div><div class="line"><a name="l00656"></a><span class="lineno">  656</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#aaeddcdf1d08d84c76c5453f4a71fbe7a">_symmetric</a> = <a class="code" href="namespaceShipCAD.html#af343b5a2dfd09b32b9451d35e0676384">ReadBoolFromStr</a>(lineno, str, start);</div><div class="line"><a name="l00657"></a><span class="lineno">  657</span>&#160;    <span class="comment">// read developability</span></div><div class="line"><a name="l00658"></a><span class="lineno">  658</span>&#160;    <span class="keywordflow">if</span> (start != <a class="code" href="namespaceShipCAD.html#a26237f4689cbf7e356c7c1ce3f9c69ff">to_size_t</a>(str.length()))</div><div class="line"><a name="l00659"></a><span class="lineno">  659</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a81dad738f58f9b4632c1575d0b59ddb0">_developable</a> = <a class="code" href="namespaceShipCAD.html#af343b5a2dfd09b32b9451d35e0676384">ReadBoolFromStr</a>(lineno, str, start);</div><div class="line"><a name="l00660"></a><span class="lineno">  660</span>&#160;    <span class="keywordflow">else</span></div><div class="line"><a name="l00661"></a><span class="lineno">  661</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a81dad738f58f9b4632c1575d0b59ddb0">_developable</a> = <span class="keyword">false</span>;</div><div class="line"><a name="l00662"></a><span class="lineno">  662</span>&#160;    <span class="comment">// read calc intersections flag</span></div><div class="line"><a name="l00663"></a><span class="lineno">  663</span>&#160;    <span class="keywordflow">if</span> (start != <a class="code" href="namespaceShipCAD.html#a26237f4689cbf7e356c7c1ce3f9c69ff">to_size_t</a>(str.length()))</div><div class="line"><a name="l00664"></a><span class="lineno">  664</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a8213aa3e02493472fb11949f595446f2">_use_for_intersections</a> = <a class="code" href="namespaceShipCAD.html#af343b5a2dfd09b32b9451d35e0676384">ReadBoolFromStr</a>(lineno, str, start);</div><div class="line"><a name="l00665"></a><span class="lineno">  665</span>&#160;    <span class="keywordflow">else</span></div><div class="line"><a name="l00666"></a><span class="lineno">  666</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a8213aa3e02493472fb11949f595446f2">_use_for_intersections</a> = <span class="keyword">true</span>;</div><div class="line"><a name="l00667"></a><span class="lineno">  667</span>&#160;    <span class="comment">// read use in hydrostatics flag</span></div><div class="line"><a name="l00668"></a><span class="lineno">  668</span>&#160;    <span class="keywordflow">if</span> (start != <a class="code" href="namespaceShipCAD.html#a26237f4689cbf7e356c7c1ce3f9c69ff">to_size_t</a>(str.length()))</div><div class="line"><a name="l00669"></a><span class="lineno">  669</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#ad36d65882f0c46ff1b3ced7d48c173f4">_use_in_hydrostatics</a> = <a class="code" href="namespaceShipCAD.html#af343b5a2dfd09b32b9451d35e0676384">ReadBoolFromStr</a>(lineno, str, start);</div><div class="line"><a name="l00670"></a><span class="lineno">  670</span>&#160;    <span class="keywordflow">else</span></div><div class="line"><a name="l00671"></a><span class="lineno">  671</span>&#160;        <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#ad36d65882f0c46ff1b3ced7d48c173f4">_use_in_hydrostatics</a> = <span class="keyword">true</span>;</div><div class="line"><a name="l00672"></a><span class="lineno">  672</span>&#160;}</div><div class="line"><a name="l00673"></a><span class="lineno">  673</span>&#160;</div><div class="line"><a name="l00674"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#af21e024f64ce46bfbcc668a093c54d4d">  674</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#af21e024f64ce46bfbcc668a093c54d4d">SubdivisionLayer::saveToStream</a>(QStringList &amp;strings)<span class="keyword"> const</span></div><div class="line"><a name="l00675"></a><span class="lineno">  675</span>&#160;<span class="keyword"></span>{</div><div class="line"><a name="l00676"></a><span class="lineno">  676</span>&#160;    strings.push_back(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a33bbfedf8f0d130d91c74a65a575eb2a">_desc</a>);</div><div class="line"><a name="l00677"></a><span class="lineno">  677</span>&#160;    strings.push_back(QString(<span class="stringliteral">&quot;%1 %2 %3 %4 %5 %6 %7&quot;</span>)</div><div class="line"><a name="l00678"></a><span class="lineno">  678</span>&#160;                      .arg(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a73e4956d179d6ebd6c062e7e76bca196">_layerid</a>)</div><div class="line"><a name="l00679"></a><span class="lineno">  679</span>&#160;                      .arg(<a class="code" href="namespaceShipCAD.html#a87efc267ae07a84fb1cd55a4562c2907">FindDXFColorIndex</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a6da22248952737662360fa3b2730a35f">_color</a>))</div><div class="line"><a name="l00680"></a><span class="lineno">  680</span>&#160;                      .arg(<a class="code" href="namespaceShipCAD.html#a45ba7de6922e89cbddf2a4c9c810a2e4">BoolToStr</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a2d606476aba40bbbfc115c449f46ac26">_visible</a>))</div><div class="line"><a name="l00681"></a><span class="lineno">  681</span>&#160;                      .arg(<a class="code" href="namespaceShipCAD.html#a45ba7de6922e89cbddf2a4c9c810a2e4">BoolToStr</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#aaeddcdf1d08d84c76c5453f4a71fbe7a">_symmetric</a>))</div><div class="line"><a name="l00682"></a><span class="lineno">  682</span>&#160;                      .arg(<a class="code" href="namespaceShipCAD.html#a45ba7de6922e89cbddf2a4c9c810a2e4">BoolToStr</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a81dad738f58f9b4632c1575d0b59ddb0">_developable</a>))</div><div class="line"><a name="l00683"></a><span class="lineno">  683</span>&#160;                      .arg(<a class="code" href="namespaceShipCAD.html#a45ba7de6922e89cbddf2a4c9c810a2e4">BoolToStr</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a8213aa3e02493472fb11949f595446f2">_use_for_intersections</a>))</div><div class="line"><a name="l00684"></a><span class="lineno">  684</span>&#160;                      .arg(<a class="code" href="namespaceShipCAD.html#a45ba7de6922e89cbddf2a4c9c810a2e4">BoolToStr</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#ad36d65882f0c46ff1b3ced7d48c173f4">_use_in_hydrostatics</a>)));</div><div class="line"><a name="l00685"></a><span class="lineno">  685</span>&#160;}</div><div class="line"><a name="l00686"></a><span class="lineno">  686</span>&#160;</div><div class="line"><a name="l00687"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#a48cbd23cf3d5492c4341cf9cd62214cd">  687</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a48cbd23cf3d5492c4341cf9cd62214cd">SubdivisionLayer::saveBinary</a>(<a class="code" href="classShipCAD_1_1FileBuffer.html">FileBuffer</a>&amp; destination)<span class="keyword"> const</span></div><div class="line"><a name="l00688"></a><span class="lineno">  688</span>&#160;<span class="keyword"></span>{</div><div class="line"><a name="l00689"></a><span class="lineno">  689</span>&#160;    destination.<a class="code" href="classShipCAD_1_1FileBuffer.html#a9a5d46b2c6d568ee2cdef110d4773e73">add</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a33bbfedf8f0d130d91c74a65a575eb2a">_desc</a>);</div><div class="line"><a name="l00690"></a><span class="lineno">  690</span>&#160;    destination.<a class="code" href="classShipCAD_1_1FileBuffer.html#a9a5d46b2c6d568ee2cdef110d4773e73">add</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a73e4956d179d6ebd6c062e7e76bca196">_layerid</a>);</div><div class="line"><a name="l00691"></a><span class="lineno">  691</span>&#160;    destination.<a class="code" href="classShipCAD_1_1FileBuffer.html#a9a5d46b2c6d568ee2cdef110d4773e73">add</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a6da22248952737662360fa3b2730a35f">_color</a>);</div><div class="line"><a name="l00692"></a><span class="lineno">  692</span>&#160;    destination.<a class="code" href="classShipCAD_1_1FileBuffer.html#a9a5d46b2c6d568ee2cdef110d4773e73">add</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a2d606476aba40bbbfc115c449f46ac26">_visible</a>);</div><div class="line"><a name="l00693"></a><span class="lineno">  693</span>&#160;    destination.<a class="code" href="classShipCAD_1_1FileBuffer.html#a9a5d46b2c6d568ee2cdef110d4773e73">add</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#aaeddcdf1d08d84c76c5453f4a71fbe7a">_symmetric</a>);</div><div class="line"><a name="l00694"></a><span class="lineno">  694</span>&#160;    destination.<a class="code" href="classShipCAD_1_1FileBuffer.html#a9a5d46b2c6d568ee2cdef110d4773e73">add</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a81dad738f58f9b4632c1575d0b59ddb0">_developable</a>);</div><div class="line"><a name="l00695"></a><span class="lineno">  695</span>&#160;    <span class="keywordflow">if</span> (destination.<a class="code" href="classShipCAD_1_1FileBuffer.html#a06f87b30f5fd091cc5c270964ea16770">getVersion</a>() &gt;= <a class="code" href="namespaceShipCAD.html#af3a6fa23a7318acbda7b0066b53d694fad37dee2f48dd8e2dacbb6ffb3928c7ea">fv180</a>) {</div><div class="line"><a name="l00696"></a><span class="lineno">  696</span>&#160;        destination.<a class="code" href="classShipCAD_1_1FileBuffer.html#a9a5d46b2c6d568ee2cdef110d4773e73">add</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a8213aa3e02493472fb11949f595446f2">_use_for_intersections</a>);</div><div class="line"><a name="l00697"></a><span class="lineno">  697</span>&#160;        destination.<a class="code" href="classShipCAD_1_1FileBuffer.html#a9a5d46b2c6d568ee2cdef110d4773e73">add</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#ad36d65882f0c46ff1b3ced7d48c173f4">_use_in_hydrostatics</a>);</div><div class="line"><a name="l00698"></a><span class="lineno">  698</span>&#160;        <span class="keywordflow">if</span> (destination.<a class="code" href="classShipCAD_1_1FileBuffer.html#a06f87b30f5fd091cc5c270964ea16770">getVersion</a>() &gt;= <a class="code" href="namespaceShipCAD.html#af3a6fa23a7318acbda7b0066b53d694fa155bf0424294686430a251fed7e7cb83">fv191</a>) {</div><div class="line"><a name="l00699"></a><span class="lineno">  699</span>&#160;            destination.<a class="code" href="classShipCAD_1_1FileBuffer.html#a9a5d46b2c6d568ee2cdef110d4773e73">add</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#adfdd4e996a5be7147a2eeb682dd93ff8">_material_density</a>);</div><div class="line"><a name="l00700"></a><span class="lineno">  700</span>&#160;            destination.<a class="code" href="classShipCAD_1_1FileBuffer.html#a9a5d46b2c6d568ee2cdef110d4773e73">add</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a00a308fdf03a0c1d9a6fa65f965e7942">_thickness</a>);</div><div class="line"><a name="l00701"></a><span class="lineno">  701</span>&#160;            <span class="keywordflow">if</span> (destination.<a class="code" href="classShipCAD_1_1FileBuffer.html#a06f87b30f5fd091cc5c270964ea16770">getVersion</a>() &gt;= <a class="code" href="namespaceShipCAD.html#af3a6fa23a7318acbda7b0066b53d694fadfb6c2f915e2ab1d0a40f8c83a04748d">fv201</a>) {</div><div class="line"><a name="l00702"></a><span class="lineno">  702</span>&#160;                destination.<a class="code" href="classShipCAD_1_1FileBuffer.html#a9a5d46b2c6d568ee2cdef110d4773e73">add</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a373fd987b5f973a995517e7f97fda5ac">_show_in_linesplan</a>);</div><div class="line"><a name="l00703"></a><span class="lineno">  703</span>&#160;                <span class="keywordflow">if</span> (destination.<a class="code" href="classShipCAD_1_1FileBuffer.html#a06f87b30f5fd091cc5c270964ea16770">getVersion</a>() &gt;= <a class="code" href="namespaceShipCAD.html#af3a6fa23a7318acbda7b0066b53d694fa3e815680f28b362a51b70712e376e7d7">fv260</a>) {</div><div class="line"><a name="l00704"></a><span class="lineno">  704</span>&#160;                    quint32 n = <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a1681170da038b0708d1b4dcd2ec89b81">_alphablend</a>;</div><div class="line"><a name="l00705"></a><span class="lineno">  705</span>&#160;                    destination.<a class="code" href="classShipCAD_1_1FileBuffer.html#a9a5d46b2c6d568ee2cdef110d4773e73">add</a>(n);</div><div class="line"><a name="l00706"></a><span class="lineno">  706</span>&#160;                }</div><div class="line"><a name="l00707"></a><span class="lineno">  707</span>&#160;            }</div><div class="line"><a name="l00708"></a><span class="lineno">  708</span>&#160;        }</div><div class="line"><a name="l00709"></a><span class="lineno">  709</span>&#160;    }</div><div class="line"><a name="l00710"></a><span class="lineno">  710</span>&#160;}</div><div class="line"><a name="l00711"></a><span class="lineno">  711</span>&#160;</div><div class="line"><a name="l00712"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#ade79d45525e51e61ad4c8a790c7fd5b3">  712</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#ade79d45525e51e61ad4c8a790c7fd5b3">SubdivisionLayer::saveToDXF</a>(QStringList&amp; strings)</div><div class="line"><a name="l00713"></a><span class="lineno">  713</span>&#160;{</div><div class="line"><a name="l00714"></a><span class="lineno">  714</span>&#160;    <span class="keywordflow">if</span> (!<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#adb65832883b6d2c88803d62edb48588b">isVisible</a>())</div><div class="line"><a name="l00715"></a><span class="lineno">  715</span>&#160;        <span class="keywordflow">return</span>;</div><div class="line"><a name="l00716"></a><span class="lineno">  716</span>&#160;    vector&lt;ControlFaceGrid&gt; assembled;</div><div class="line"><a name="l00717"></a><span class="lineno">  717</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionBase.html#a0b9a68b5c7e6a20cf52a465f2387ffba">getOwner</a>()-&gt;<a class="code" href="classShipCAD_1_1SubdivisionSurface.html#ab14892e66e800a795e1af3dcc781af02">assembleFacesToPatches</a>(<a class="code" href="namespaceShipCAD.html#aaba70dc1c80dc540bef320cb9b720a20aeaaf4833473e9e7c408d2f02c7d112c6">amRegular</a>, assembled);</div><div class="line"><a name="l00718"></a><span class="lineno">  718</span>&#160;    <span class="keywordflow">if</span> (assembled.size() == 0)</div><div class="line"><a name="l00719"></a><span class="lineno">  719</span>&#160;        <span class="keywordflow">return</span>;</div><div class="line"><a name="l00720"></a><span class="lineno">  720</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i=0; i&lt;assembled.size(); ++i) {</div><div class="line"><a name="l00721"></a><span class="lineno">  721</span>&#160;        <a class="code" href="structShipCAD_1_1ControlFaceGrid.html">ControlFaceGrid</a> assface = assembled[i];</div><div class="line"><a name="l00722"></a><span class="lineno">  722</span>&#160;        <span class="keywordflow">if</span> ((assface.<a class="code" href="structShipCAD_1_1ControlFaceGrid.html#ab7a808def28fd23029532f1bce5bb674">cols</a>() &gt; 1 &amp;&amp; assface.<a class="code" href="structShipCAD_1_1ControlFaceGrid.html#a8b124d162ea1d32383f4896e29811c12">rows</a>() &gt;= 1) ||</div><div class="line"><a name="l00723"></a><span class="lineno">  723</span>&#160;            (assface.<a class="code" href="structShipCAD_1_1ControlFaceGrid.html#ab7a808def28fd23029532f1bce5bb674">cols</a>() &gt;= 1 &amp;&amp; assface.<a class="code" href="structShipCAD_1_1ControlFaceGrid.html#a8b124d162ea1d32383f4896e29811c12">rows</a>() &gt; 1) ||</div><div class="line"><a name="l00724"></a><span class="lineno">  724</span>&#160;            (assface.<a class="code" href="structShipCAD_1_1ControlFaceGrid.html#ab7a808def28fd23029532f1bce5bb674">cols</a>() == 1 &amp;&amp; assface.<a class="code" href="structShipCAD_1_1ControlFaceGrid.html#a8b124d162ea1d32383f4896e29811c12">rows</a>() == 1 &amp;&amp; assface.<a class="code" href="structShipCAD_1_1ControlFaceGrid.html#ae77d2fb91a62c9631c66786a905d256d">getFace</a>(0,0)-&gt;<a class="code" href="classShipCAD_1_1SubdivisionFace.html#abd79b6dfadd10befe94b524a34063b27">numberOfPoints</a>() == 4)) {</div><div class="line"><a name="l00725"></a><span class="lineno">  725</span>&#160;            <a class="code" href="structShipCAD_1_1PointGrid.html">PointGrid</a> grid;</div><div class="line"><a name="l00726"></a><span class="lineno">  726</span>&#160;            <a class="code" href="classShipCAD_1_1SubdivisionBase.html#a0b9a68b5c7e6a20cf52a465f2387ffba">getOwner</a>()-&gt;<a class="code" href="classShipCAD_1_1SubdivisionSurface.html#a6049cf9c53f06eb02fd34cdc0653cbfd">convertToGrid</a>(assface, grid);</div><div class="line"><a name="l00727"></a><span class="lineno">  727</span>&#160;            <span class="keywordflow">if</span> (grid.<a class="code" href="structShipCAD_1_1PointGrid.html#a7c4b8397c5a6dfcb88f91412bc1ea5e2">cols</a>() &gt; 0 &amp;&amp; grid.<a class="code" href="structShipCAD_1_1PointGrid.html#a2bd6eecd15643afb29bd7de2f891b614">rows</a>() &gt; 0) {</div><div class="line"><a name="l00728"></a><span class="lineno">  728</span>&#160;                strings.push_back(QString(<span class="stringliteral">&quot;0\r\nPOLYLINE&quot;</span>));</div><div class="line"><a name="l00729"></a><span class="lineno">  729</span>&#160;                strings.push_back(QString(<span class="stringliteral">&quot;8\r\n%1&quot;</span>).arg(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a22eacfdf763840d534d45b18b789f8c7">getName</a>()));</div><div class="line"><a name="l00730"></a><span class="lineno">  730</span>&#160;                strings.push_back(QString(<span class="stringliteral">&quot;62\r\n%1&quot;</span>).arg(<a class="code" href="namespaceShipCAD.html#a87efc267ae07a84fb1cd55a4562c2907">FindDXFColorIndex</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a42268e80d68448cdcfc12d1c06f20229">getColor</a>())));</div><div class="line"><a name="l00731"></a><span class="lineno">  731</span>&#160;                strings.push_back(QString(<span class="stringliteral">&quot;66\r\n1&quot;</span>));</div><div class="line"><a name="l00732"></a><span class="lineno">  732</span>&#160;                strings.push_back(QString(<span class="stringliteral">&quot;70\r\n16&quot;</span>));</div><div class="line"><a name="l00733"></a><span class="lineno">  733</span>&#160;                strings.push_back(QString(<span class="stringliteral">&quot;71\r\n%1&quot;</span>).arg(grid.<a class="code" href="structShipCAD_1_1PointGrid.html#a2bd6eecd15643afb29bd7de2f891b614">rows</a>()));</div><div class="line"><a name="l00734"></a><span class="lineno">  734</span>&#160;                strings.push_back(QString(<span class="stringliteral">&quot;72\r\n%1&quot;</span>).arg(grid.<a class="code" href="structShipCAD_1_1PointGrid.html#a7c4b8397c5a6dfcb88f91412bc1ea5e2">cols</a>()));</div><div class="line"><a name="l00735"></a><span class="lineno">  735</span>&#160;                <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> j=0; j&lt;grid.<a class="code" href="structShipCAD_1_1PointGrid.html#a2bd6eecd15643afb29bd7de2f891b614">rows</a>(); j++) {</div><div class="line"><a name="l00736"></a><span class="lineno">  736</span>&#160;                    <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> k=0; k&lt;grid.<a class="code" href="structShipCAD_1_1PointGrid.html#a7c4b8397c5a6dfcb88f91412bc1ea5e2">cols</a>(); k++) {</div><div class="line"><a name="l00737"></a><span class="lineno">  737</span>&#160;                        strings.push_back(QString(<span class="stringliteral">&quot;0\r\nVERTEX&quot;</span>));</div><div class="line"><a name="l00738"></a><span class="lineno">  738</span>&#160;                        strings.push_back(QString(<span class="stringliteral">&quot;8\r\n%1&quot;</span>).arg(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a22eacfdf763840d534d45b18b789f8c7">getName</a>()));</div><div class="line"><a name="l00739"></a><span class="lineno">  739</span>&#160;                        QVector3D p = grid.<a class="code" href="structShipCAD_1_1PointGrid.html#ac550e1688340f55d1dae9ec8c370ee31">getPoint</a>(j, k)-&gt;<a class="code" href="classShipCAD_1_1SubdivisionPoint.html#a285325115089a1b99be4480bf6079bf1">getCoordinate</a>();</div><div class="line"><a name="l00740"></a><span class="lineno">  740</span>&#160;                        strings.push_back(QString(<span class="stringliteral">&quot;10\r\n%1&quot;</span>).arg(<a class="code" href="namespaceShipCAD.html#a646812cc2b9066dfc47f2ed7e1faa955">Truncate</a>(p.x(), 4)));</div><div class="line"><a name="l00741"></a><span class="lineno">  741</span>&#160;                        strings.push_back(QString(<span class="stringliteral">&quot;20\r\n%1&quot;</span>).arg(<a class="code" href="namespaceShipCAD.html#a646812cc2b9066dfc47f2ed7e1faa955">Truncate</a>(p.y(), 4)));</div><div class="line"><a name="l00742"></a><span class="lineno">  742</span>&#160;                        strings.push_back(QString(<span class="stringliteral">&quot;30\r\n%1&quot;</span>).arg(<a class="code" href="namespaceShipCAD.html#a646812cc2b9066dfc47f2ed7e1faa955">Truncate</a>(p.z(), 4)));</div><div class="line"><a name="l00743"></a><span class="lineno">  743</span>&#160;                        strings.push_back(QString(<span class="stringliteral">&quot;70\r\n64&quot;</span>)); <span class="comment">// polygon mesh vertex</span></div><div class="line"><a name="l00744"></a><span class="lineno">  744</span>&#160;                    }</div><div class="line"><a name="l00745"></a><span class="lineno">  745</span>&#160;                }</div><div class="line"><a name="l00746"></a><span class="lineno">  746</span>&#160;                strings.push_back(QString(<span class="stringliteral">&quot;0\r\nSEQEND&quot;</span>));</div><div class="line"><a name="l00747"></a><span class="lineno">  747</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#af1d37cf069e050828f42c034ada4661e">isSymmetric</a>() &amp;&amp; <a class="code" href="classShipCAD_1_1SubdivisionBase.html#a0b9a68b5c7e6a20cf52a465f2387ffba">getOwner</a>()-&gt;drawMirror()) {</div><div class="line"><a name="l00748"></a><span class="lineno">  748</span>&#160;                    strings.push_back(QString(<span class="stringliteral">&quot;0\r\nPOLYLINE&quot;</span>));</div><div class="line"><a name="l00749"></a><span class="lineno">  749</span>&#160;                    strings.push_back(QString(<span class="stringliteral">&quot;8\r\n%1&quot;</span>).arg(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a22eacfdf763840d534d45b18b789f8c7">getName</a>()));</div><div class="line"><a name="l00750"></a><span class="lineno">  750</span>&#160;                    strings.push_back(QString(<span class="stringliteral">&quot;62\r\n%1&quot;</span>).arg(<a class="code" href="namespaceShipCAD.html#a87efc267ae07a84fb1cd55a4562c2907">FindDXFColorIndex</a>(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a42268e80d68448cdcfc12d1c06f20229">getColor</a>())));</div><div class="line"><a name="l00751"></a><span class="lineno">  751</span>&#160;                    strings.push_back(QString(<span class="stringliteral">&quot;66\r\n1&quot;</span>));</div><div class="line"><a name="l00752"></a><span class="lineno">  752</span>&#160;                    strings.push_back(QString(<span class="stringliteral">&quot;70\r\n16&quot;</span>));</div><div class="line"><a name="l00753"></a><span class="lineno">  753</span>&#160;                    strings.push_back(QString(<span class="stringliteral">&quot;71\r\n%1&quot;</span>).arg(grid.<a class="code" href="structShipCAD_1_1PointGrid.html#a7c4b8397c5a6dfcb88f91412bc1ea5e2">cols</a>()));</div><div class="line"><a name="l00754"></a><span class="lineno">  754</span>&#160;                    strings.push_back(QString(<span class="stringliteral">&quot;72\r\n%1&quot;</span>).arg(grid.<a class="code" href="structShipCAD_1_1PointGrid.html#a2bd6eecd15643afb29bd7de2f891b614">rows</a>()));</div><div class="line"><a name="l00755"></a><span class="lineno">  755</span>&#160;                    <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> j=0; j&lt;grid.<a class="code" href="structShipCAD_1_1PointGrid.html#a2bd6eecd15643afb29bd7de2f891b614">rows</a>(); j++) {</div><div class="line"><a name="l00756"></a><span class="lineno">  756</span>&#160;                        <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> k=0; k&lt;grid.<a class="code" href="structShipCAD_1_1PointGrid.html#a7c4b8397c5a6dfcb88f91412bc1ea5e2">cols</a>(); k++) {</div><div class="line"><a name="l00757"></a><span class="lineno">  757</span>&#160;                            strings.push_back(QString(<span class="stringliteral">&quot;0\r\nVERTEX&quot;</span>));</div><div class="line"><a name="l00758"></a><span class="lineno">  758</span>&#160;                            strings.push_back(QString(<span class="stringliteral">&quot;8\r\n%1&quot;</span>).arg(<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a22eacfdf763840d534d45b18b789f8c7">getName</a>()));</div><div class="line"><a name="l00759"></a><span class="lineno">  759</span>&#160;                            QVector3D p = grid.<a class="code" href="structShipCAD_1_1PointGrid.html#ac550e1688340f55d1dae9ec8c370ee31">getPoint</a>(j, k)-&gt;<a class="code" href="classShipCAD_1_1SubdivisionPoint.html#a285325115089a1b99be4480bf6079bf1">getCoordinate</a>();</div><div class="line"><a name="l00760"></a><span class="lineno">  760</span>&#160;                            strings.push_back(QString(<span class="stringliteral">&quot;10\r\n%1&quot;</span>).arg(<a class="code" href="namespaceShipCAD.html#a646812cc2b9066dfc47f2ed7e1faa955">Truncate</a>(p.x(), 4)));</div><div class="line"><a name="l00761"></a><span class="lineno">  761</span>&#160;                            strings.push_back(QString(<span class="stringliteral">&quot;20\r\n%1&quot;</span>).arg(<a class="code" href="namespaceShipCAD.html#a646812cc2b9066dfc47f2ed7e1faa955">Truncate</a>(-p.y(), 4)));</div><div class="line"><a name="l00762"></a><span class="lineno">  762</span>&#160;                            strings.push_back(QString(<span class="stringliteral">&quot;30\r\n%1&quot;</span>).arg(<a class="code" href="namespaceShipCAD.html#a646812cc2b9066dfc47f2ed7e1faa955">Truncate</a>(p.z(), 4)));</div><div class="line"><a name="l00763"></a><span class="lineno">  763</span>&#160;                            strings.push_back(QString(<span class="stringliteral">&quot;70\r\n64&quot;</span>)); <span class="comment">// polygon mesh vertex</span></div><div class="line"><a name="l00764"></a><span class="lineno">  764</span>&#160;                        }</div><div class="line"><a name="l00765"></a><span class="lineno">  765</span>&#160;                    }</div><div class="line"><a name="l00766"></a><span class="lineno">  766</span>&#160;                    strings.push_back(QString(<span class="stringliteral">&quot;0\r\nSEQEND&quot;</span>));</div><div class="line"><a name="l00767"></a><span class="lineno">  767</span>&#160;                }</div><div class="line"><a name="l00768"></a><span class="lineno">  768</span>&#160;            } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00769"></a><span class="lineno">  769</span>&#160;                <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> j=0; j&lt;assface.<a class="code" href="structShipCAD_1_1ControlFaceGrid.html#a8b124d162ea1d32383f4896e29811c12">rows</a>(); j++) {</div><div class="line"><a name="l00770"></a><span class="lineno">  770</span>&#160;                    <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> k=0; k&lt;assface.<a class="code" href="structShipCAD_1_1ControlFaceGrid.html#ab7a808def28fd23029532f1bce5bb674">cols</a>(); k++) {</div><div class="line"><a name="l00771"></a><span class="lineno">  771</span>&#160;                        <a class="code" href="classShipCAD_1_1SubdivisionControlFace.html">SubdivisionControlFace</a>* face = assface.<a class="code" href="structShipCAD_1_1ControlFaceGrid.html#ae77d2fb91a62c9631c66786a905d256d">getFace</a>(j, k);</div><div class="line"><a name="l00772"></a><span class="lineno">  772</span>&#160;                        <span class="keywordflow">if</span> (face != 0)</div><div class="line"><a name="l00773"></a><span class="lineno">  773</span>&#160;                            face-&gt;<a class="code" href="classShipCAD_1_1SubdivisionControlFace.html#afb041e8183a570059b354afb74d954c2">saveToDXF</a>(strings);</div><div class="line"><a name="l00774"></a><span class="lineno">  774</span>&#160;                    }</div><div class="line"><a name="l00775"></a><span class="lineno">  775</span>&#160;                }</div><div class="line"><a name="l00776"></a><span class="lineno">  776</span>&#160;            }</div><div class="line"><a name="l00777"></a><span class="lineno">  777</span>&#160;        } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (assface.<a class="code" href="structShipCAD_1_1ControlFaceGrid.html#a8b124d162ea1d32383f4896e29811c12">rows</a>() == 1 &amp;&amp; assface.<a class="code" href="structShipCAD_1_1ControlFaceGrid.html#ab7a808def28fd23029532f1bce5bb674">cols</a>() == 1) {</div><div class="line"><a name="l00778"></a><span class="lineno">  778</span>&#160;            assface.<a class="code" href="structShipCAD_1_1ControlFaceGrid.html#ae77d2fb91a62c9631c66786a905d256d">getFace</a>(0, 0)-&gt;<a class="code" href="classShipCAD_1_1SubdivisionControlFace.html#afb041e8183a570059b354afb74d954c2">saveToDXF</a>(strings);</div><div class="line"><a name="l00779"></a><span class="lineno">  779</span>&#160;        }</div><div class="line"><a name="l00780"></a><span class="lineno">  780</span>&#160;    }</div><div class="line"><a name="l00781"></a><span class="lineno">  781</span>&#160;}</div><div class="line"><a name="l00782"></a><span class="lineno">  782</span>&#160;</div><div class="line"><a name="l00783"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#ab41e005f720a2bba4b2efa74bfd5943e">  783</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#ab41e005f720a2bba4b2efa74bfd5943e">SubdivisionLayer::dump</a>(ostream&amp; os, <span class="keyword">const</span> <span class="keywordtype">char</span>* prefix)<span class="keyword"> const</span></div><div class="line"><a name="l00784"></a><span class="lineno">  784</span>&#160;<span class="keyword"></span>{</div><div class="line"><a name="l00785"></a><span class="lineno">  785</span>&#160;    os &lt;&lt; prefix &lt;&lt; <span class="stringliteral">&quot;SubdivisionLayer [&quot;</span></div><div class="line"><a name="l00786"></a><span class="lineno">  786</span>&#160;       &lt;&lt; hex &lt;&lt; <span class="keyword">this</span> &lt;&lt; <span class="stringliteral">&quot;]\n&quot;</span>;</div><div class="line"><a name="l00787"></a><span class="lineno">  787</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a80009b02c31a01e2de9f93d5982b9a63">priv_dump</a>(os, prefix);</div><div class="line"><a name="l00788"></a><span class="lineno">  788</span>&#160;}</div><div class="line"><a name="l00789"></a><span class="lineno">  789</span>&#160;</div><div class="line"><a name="l00790"></a><span class="lineno"><a class="line" href="classShipCAD_1_1SubdivisionLayer.html#a80009b02c31a01e2de9f93d5982b9a63">  790</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html#a80009b02c31a01e2de9f93d5982b9a63">SubdivisionLayer::priv_dump</a>(ostream&amp; os, <span class="keyword">const</span> <span class="keywordtype">char</span>* prefix)<span class="keyword"> const</span></div><div class="line"><a name="l00791"></a><span class="lineno">  791</span>&#160;<span class="keyword"></span>{</div><div class="line"><a name="l00792"></a><span class="lineno">  792</span>&#160;    <a class="code" href="classShipCAD_1_1SubdivisionBase.html#a024aa781bbf2e54b6fb088e33126998e">SubdivisionBase::priv_dump</a>(os, prefix);</div><div class="line"><a name="l00793"></a><span class="lineno">  793</span>&#160;}</div><div class="line"><a name="l00794"></a><span class="lineno">  794</span>&#160;</div><div class="line"><a name="l00795"></a><span class="lineno"><a class="line" href="subdivlayer_8h.html#ab7a77e7fd67de80392381e04efde1dfa">  795</a></span>&#160;ostream&amp; <a class="code" href="subdivlayer_8cpp.html#a7e5a5837d8fcd488f6f97c29c2ba3477">operator &lt;&lt; </a>(ostream&amp; os, <span class="keyword">const</span> <a class="code" href="classShipCAD_1_1SubdivisionLayer.html">ShipCAD::SubdivisionLayer</a>&amp; layer)</div><div class="line"><a name="l00796"></a><span class="lineno">  796</span>&#160;{</div><div class="line"><a name="l00797"></a><span class="lineno">  797</span>&#160;    layer.<a class="code" href="classShipCAD_1_1SubdivisionLayer.html#ab41e005f720a2bba4b2efa74bfd5943e">dump</a>(os);</div><div class="line"><a name="l00798"></a><span class="lineno">  798</span>&#160;    <span class="keywordflow">return</span> os;</div><div class="line"><a name="l00799"></a><span class="lineno">  799</span>&#160;}</div><div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_adf79f2412e399763bf1915d10f2f2a0a"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#adf79f2412e399763bf1915d10f2f2a0a">ShipCAD::SubdivisionLayer::loadFromStream</a></div><div class="ttdeci">void loadFromStream(size_t &amp;lineno, QStringList &amp;strings)</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00639">subdivlayer.cpp:639</a></div></div>
<div class="ttc" id="namespaceShipCAD_html_a67437198ee14f74e6c5277d761894863a70fcfa9199faab53e43f138ed64ad12f"><div class="ttname"><a href="namespaceShipCAD.html#a67437198ee14f74e6c5277d761894863a70fcfa9199faab53e43f138ed64ad12f">ShipCAD::vmShadeZebra</a></div><div class="ttdef"><b>Definition:</b> <a href="shipcadlib_8h_source.html#l00067">shipcadlib.h:67</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_ade79d45525e51e61ad4c8a790c7fd5b3"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#ade79d45525e51e61ad4c8a790c7fd5b3">ShipCAD::SubdivisionLayer::saveToDXF</a></div><div class="ttdeci">void saveToDXF(QStringList &amp;strings)</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00712">subdivlayer.cpp:712</a></div></div>
<div class="ttc" id="namespaceShipCAD_html_a45ba7de6922e89cbddf2a4c9c810a2e4"><div class="ttname"><a href="namespaceShipCAD.html#a45ba7de6922e89cbddf2a4c9c810a2e4">ShipCAD::BoolToStr</a></div><div class="ttdeci">QString BoolToStr(bool val)</div><div class="ttdoc">convert a bool to a string for serialization </div><div class="ttdef"><b>Definition:</b> <a href="utility_8cpp_source.html#l00410">utility.cpp:410</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionControlPoint_html"><div class="ttname"><a href="classShipCAD_1_1SubdivisionControlPoint.html">ShipCAD::SubdivisionControlPoint</a></div><div class="ttdoc">3D Control point </div><div class="ttdef"><b>Definition:</b> <a href="subdivpoint_8h_source.html#l00208">subdivpoint.h:208</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionControlFace_html_a58ee183f9aef669fe96ccf36789999c2"><div class="ttname"><a href="classShipCAD_1_1SubdivisionControlFace.html#a58ee183f9aef669fe96ccf36789999c2">ShipCAD::SubdivisionControlFace::getMax</a></div><div class="ttdeci">QVector3D getMax() const </div><div class="ttdef"><b>Definition:</b> <a href="subdivface_8h_source.html#l00320">subdivface.h:320</a></div></div>
<div class="ttc" id="structShipCAD_1_1LayerPropertiesForDialog_html_ab2610addf8f227b9b9f00e9f275f6342"><div class="ttname"><a href="structShipCAD_1_1LayerPropertiesForDialog.html#ab2610addf8f227b9b9f00e9f275f6342">ShipCAD::LayerPropertiesForDialog::developable</a></div><div class="ttdeci">bool developable</div><div class="ttdef"><b>Definition:</b> <a href="dialogdata_8h_source.html#l00102">dialogdata.h:102</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a6da22248952737662360fa3b2730a35f"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a6da22248952737662360fa3b2730a35f">ShipCAD::SubdivisionLayer::_color</a></div><div class="ttdeci">QColor _color</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8h_source.html#l00167">subdivlayer.h:167</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_adb65832883b6d2c88803d62edb48588b"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#adb65832883b6d2c88803d62edb48588b">ShipCAD::SubdivisionLayer::isVisible</a></div><div class="ttdeci">bool isVisible() const </div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8h_source.html#l00084">subdivlayer.h:84</a></div></div>
<div class="ttc" id="classShipCAD_1_1DevelopedPatch_html_a3ddb91773f49fa342f1fed811cd329f2"><div class="ttname"><a href="classShipCAD_1_1DevelopedPatch.html#a3ddb91773f49fa342f1fed811cd329f2">ShipCAD::DevelopedPatch::setName</a></div><div class="ttdeci">void setName(const QString &amp;nm)</div><div class="ttdef"><b>Definition:</b> <a href="developedpatch_8h_source.html#l00102">developedpatch.h:102</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_aa3f5427f8d5dc40964721acf840b2e24"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#aa3f5427f8d5dc40964721acf840b2e24">ShipCAD::SubdivisionLayer::getProperties</a></div><div class="ttdeci">ShipCAD::LayerPropertiesForDialog getProperties() const </div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00251">subdivlayer.cpp:251</a></div></div>
<div class="ttc" id="subdivface_8h_html"><div class="ttname"><a href="subdivface_8h.html">subdivface.h</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a4e852a07f46e57f28ffedd4a68c2f4c4"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a4e852a07f46e57f28ffedd4a68c2f4c4">ShipCAD::SubdivisionLayer::~SubdivisionLayer</a></div><div class="ttdeci">virtual ~SubdivisionLayer()</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00066">subdivlayer.cpp:66</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionControlFace_html_a6f015666ee5e626ce3aed4973f8d12a7"><div class="ttname"><a href="classShipCAD_1_1SubdivisionControlFace.html#a6f015666ee5e626ce3aed4973f8d12a7">ShipCAD::SubdivisionControlFace::getChild</a></div><div class="ttdeci">SubdivisionFace * getChild(size_t index) const </div><div class="ttdef"><b>Definition:</b> <a href="subdivface_8cpp_source.html#l01059">subdivface.cpp:1059</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_ab5494ac4f4d15f3923ea8496b12c6239"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#ab5494ac4f4d15f3923ea8496b12c6239">ShipCAD::SubdivisionLayer::processTriangle</a></div><div class="ttdeci">void processTriangle(const QVector3D &amp;p1, const QVector3D &amp;p2, const QVector3D &amp;p3, LayerProperties &amp;props) const </div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00097">subdivlayer.cpp:97</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a3861c77aeb283fbea6efe943ced83f41"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a3861c77aeb283fbea6efe943ced83f41">ShipCAD::SubdivisionLayer::setName</a></div><div class="ttdeci">void setName(const QString &amp;val)</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00160">subdivlayer.cpp:160</a></div></div>
<div class="ttc" id="developedpatch_8h_html"><div class="ttname"><a href="developedpatch_8h.html">developedpatch.h</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a319ae070f596e92307671cda0a607887"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a319ae070f596e92307671cda0a607887">ShipCAD::SubdivisionLayer::assignProperties</a></div><div class="ttdeci">void assignProperties(SubdivisionLayer *source)</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00240">subdivlayer.cpp:240</a></div></div>
<div class="ttc" id="structShipCAD_1_1LayerPropertiesForDialog_html_a1d0c75ad5128b805bf99aab57212127f"><div class="ttname"><a href="structShipCAD_1_1LayerPropertiesForDialog.html#a1d0c75ad5128b805bf99aab57212127f">ShipCAD::LayerPropertiesForDialog::material_density</a></div><div class="ttdeci">float material_density</div><div class="ttdef"><b>Definition:</b> <a href="dialogdata_8h_source.html#l00104">dialogdata.h:104</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionSurface_html_a42b3e7703acd8d51c501d7c47f09ed78"><div class="ttname"><a href="classShipCAD_1_1SubdivisionSurface.html#a42b3e7703acd8d51c501d7c47f09ed78">ShipCAD::SubdivisionSurface::drawMirror</a></div><div class="ttdeci">bool drawMirror() const </div><div class="ttdef"><b>Definition:</b> <a href="subdivsurface_8h_source.html#l00329">subdivsurface.h:329</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionSurface_html_ab14892e66e800a795e1af3dcc781af02"><div class="ttname"><a href="classShipCAD_1_1SubdivisionSurface.html#ab14892e66e800a795e1af3dcc781af02">ShipCAD::SubdivisionSurface::assembleFacesToPatches</a></div><div class="ttdeci">void assembleFacesToPatches(assemble_mode_t mode, std::vector&lt; ControlFaceGrid &gt; &amp;assembledPatches)</div><div class="ttdef"><b>Definition:</b> <a href="subdivsurface_8cpp_source.html#l00822">subdivsurface.cpp:822</a></div></div>
<div class="ttc" id="namespaceShipCAD_html_af343b5a2dfd09b32b9451d35e0676384"><div class="ttname"><a href="namespaceShipCAD.html#af343b5a2dfd09b32b9451d35e0676384">ShipCAD::ReadBoolFromStr</a></div><div class="ttdeci">bool ReadBoolFromStr(size_t lineno, const QString &amp;str, size_t &amp;start)</div><div class="ttdoc">convert a string to an boolean value </div><div class="ttdef"><b>Definition:</b> <a href="utility_8cpp_source.html#l00518">utility.cpp:518</a></div></div>
<div class="ttc" id="classShipCAD_1_1DevelopedPatch_html"><div class="ttname"><a href="classShipCAD_1_1DevelopedPatch.html">ShipCAD::DevelopedPatch</a></div><div class="ttdoc">Portion of developed surface. </div><div class="ttdef"><b>Definition:</b> <a href="developedpatch_8h_source.html#l00070">developedpatch.h:70</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionSurface_html_a5f2fbd88c0652692848f71945c6e34b8"><div class="ttname"><a href="classShipCAD_1_1SubdivisionSurface.html#a5f2fbd88c0652692848f71945c6e34b8">ShipCAD::SubdivisionSurface::getActiveLayer</a></div><div class="ttdeci">SubdivisionLayer * getActiveLayer() const </div><div class="ttdef"><b>Definition:</b> <a href="subdivsurface_8h_source.html#l00289">subdivsurface.h:289</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a81dad738f58f9b4632c1575d0b59ddb0"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a81dad738f58f9b4632c1575d0b59ddb0">ShipCAD::SubdivisionLayer::_developable</a></div><div class="ttdeci">bool _developable</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8h_source.html#l00171">subdivlayer.h:171</a></div></div>
<div class="ttc" id="pointgrid_8h_html"><div class="ttname"><a href="pointgrid_8h.html">pointgrid.h</a></div></div>
<div class="ttc" id="classShipCAD_1_1Viewport_html_a0720a01f8650dc4acf89aad0649d9196"><div class="ttname"><a href="classShipCAD_1_1Viewport.html#a0720a01f8650dc4acf89aad0649d9196">ShipCAD::Viewport::setLineShader</a></div><div class="ttdeci">LineShader * setLineShader()</div><div class="ttdef"><b>Definition:</b> <a href="viewport_8cpp_source.html#l00232">viewport.cpp:232</a></div></div>
<div class="ttc" id="classShipCAD_1_1FileBuffer_html_a9a5d46b2c6d568ee2cdef110d4773e73"><div class="ttname"><a href="classShipCAD_1_1FileBuffer.html#a9a5d46b2c6d568ee2cdef110d4773e73">ShipCAD::FileBuffer::add</a></div><div class="ttdeci">void add(const JPEGImage &amp;img)</div><div class="ttdef"><b>Definition:</b> <a href="filebuffer_8cpp_source.html#l00108">filebuffer.cpp:108</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionEdge_html_afe3de434f13adfde22f2c209197902de"><div class="ttname"><a href="classShipCAD_1_1SubdivisionEdge.html#afe3de434f13adfde22f2c209197902de">ShipCAD::SubdivisionEdge::getFace</a></div><div class="ttdeci">SubdivisionFace * getFace(size_t index) const </div><div class="ttdef"><b>Definition:</b> <a href="subdivedge_8cpp_source.html#l00156">subdivedge.cpp:156</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a992e177c7a4b468ab2e3549e44661f3a"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a992e177c7a4b468ab2e3549e44661f3a">ShipCAD::SubdivisionLayer::setThickness</a></div><div class="ttdeci">void setThickness(float val)</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00188">subdivlayer.cpp:188</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_acee4a1fcdf3b2cbf3456ed3b81d66b8b"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#acee4a1fcdf3b2cbf3456ed3b81d66b8b">ShipCAD::SubdivisionLayer::setProperties</a></div><div class="ttdeci">bool setProperties(ShipCAD::LayerPropertiesForDialog &amp;props)</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00269">subdivlayer.cpp:269</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionControlFace_html_afb041e8183a570059b354afb74d954c2"><div class="ttname"><a href="classShipCAD_1_1SubdivisionControlFace.html#afb041e8183a570059b354afb74d954c2">ShipCAD::SubdivisionControlFace::saveToDXF</a></div><div class="ttdeci">void saveToDXF(QStringList &amp;strings) const </div><div class="ttdef"><b>Definition:</b> <a href="subdivface_8cpp_source.html#l01238">subdivface.cpp:1238</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionControlFace_html_a00c3b9ec166796a0d9f21f2054a2cafd"><div class="ttname"><a href="classShipCAD_1_1SubdivisionControlFace.html#a00c3b9ec166796a0d9f21f2054a2cafd">ShipCAD::SubdivisionControlFace::drawDevelopableFaces</a></div><div class="ttdeci">virtual void drawDevelopableFaces(CurveFaceShader *shader)</div><div class="ttdef"><b>Definition:</b> <a href="subdivface_8cpp_source.html#l00846">subdivface.cpp:846</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionSurface_html_a24b230e51a0c5fb3e7f51d0e2340eb9f"><div class="ttname"><a href="classShipCAD_1_1SubdivisionSurface.html#a24b230e51a0c5fb3e7f51d0e2340eb9f">ShipCAD::SubdivisionSurface::getLayer</a></div><div class="ttdeci">SubdivisionLayer * getLayer(size_t index)</div><div class="ttdef"><b>Definition:</b> <a href="subdivsurface_8cpp_source.html#l01187">subdivsurface.cpp:1187</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionBase_html_a024aa781bbf2e54b6fb088e33126998e"><div class="ttname"><a href="classShipCAD_1_1SubdivisionBase.html#a024aa781bbf2e54b6fb088e33126998e">ShipCAD::SubdivisionBase::priv_dump</a></div><div class="ttdeci">void priv_dump(std::ostream &amp;os, const char *prefix) const </div><div class="ttdoc">dump the element to a stream </div><div class="ttdef"><b>Definition:</b> <a href="subdivbase_8cpp_source.html#l00057">subdivbase.cpp:57</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionEdge_html"><div class="ttname"><a href="classShipCAD_1_1SubdivisionEdge.html">ShipCAD::SubdivisionEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="subdivedge_8h_source.html#l00054">subdivedge.h:54</a></div></div>
<div class="ttc" id="structShipCAD_1_1LayerPropertiesForDialog_html_a8ecd6d4c933122d9f3c8f3c8fcf54781"><div class="ttname"><a href="structShipCAD_1_1LayerPropertiesForDialog.html#a8ecd6d4c933122d9f3c8f3c8fcf54781">ShipCAD::LayerPropertiesForDialog::alpha</a></div><div class="ttdeci">float alpha</div><div class="ttdef"><b>Definition:</b> <a href="dialogdata_8h_source.html#l00098">dialogdata.h:98</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a066c619a1925ab25ecf068764e4df97c"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a066c619a1925ab25ecf068764e4df97c">ShipCAD::SubdivisionLayer::setAlphaBlend</a></div><div class="ttdeci">void setAlphaBlend(unsigned char val)</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00146">subdivlayer.cpp:146</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionPoint_html_a348be9715813e54ce5895b551d46c67c"><div class="ttname"><a href="classShipCAD_1_1SubdivisionPoint.html#a348be9715813e54ce5895b551d46c67c">ShipCAD::SubdivisionPoint::getFace</a></div><div class="ttdeci">SubdivisionFace * getFace(size_t index) const </div><div class="ttdef"><b>Definition:</b> <a href="subdivpoint_8cpp_source.html#l00095">subdivpoint.cpp:95</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionBase_html_a0b9a68b5c7e6a20cf52a465f2387ffba"><div class="ttname"><a href="classShipCAD_1_1SubdivisionBase.html#a0b9a68b5c7e6a20cf52a465f2387ffba">ShipCAD::SubdivisionBase::getOwner</a></div><div class="ttdeci">SubdivisionSurface * getOwner()</div><div class="ttdoc">get the owning surface </div><div class="ttdef"><b>Definition:</b> <a href="subdivbase_8h_source.html#l00060">subdivbase.h:60</a></div></div>
<div class="ttc" id="plane_8h_html"><div class="ttname"><a href="plane_8h.html">plane.h</a></div></div>
<div class="ttc" id="structShipCAD_1_1LayerPropertiesForDialog_html_aeeae5cf44e195fe6f70d4f09a4fa3fef"><div class="ttname"><a href="structShipCAD_1_1LayerPropertiesForDialog.html#aeeae5cf44e195fe6f70d4f09a4fa3fef">ShipCAD::LayerPropertiesForDialog::thickness</a></div><div class="ttdeci">float thickness</div><div class="ttdef"><b>Definition:</b> <a href="dialogdata_8h_source.html#l00105">dialogdata.h:105</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionControlFace_html_a0816cbcc14608e95b2013c80cad80bc8"><div class="ttname"><a href="classShipCAD_1_1SubdivisionControlFace.html#a0816cbcc14608e95b2013c80cad80bc8">ShipCAD::SubdivisionControlFace::drawZebraFaces</a></div><div class="ttdeci">virtual void drawZebraFaces(Viewport &amp;vp, CurveFaceShader *shader)</div><div class="ttdef"><b>Definition:</b> <a href="subdivface_8cpp_source.html#l00656">subdivface.cpp:656</a></div></div>
<div class="ttc" id="structShipCAD_1_1LayerPropertiesForDialog_html_a3175b253fd29d654cafe5b359f34a2b4"><div class="ttname"><a href="structShipCAD_1_1LayerPropertiesForDialog.html#a3175b253fd29d654cafe5b359f34a2b4">ShipCAD::LayerPropertiesForDialog::layer_properties</a></div><div class="ttdeci">ShipCAD::LayerProperties layer_properties</div><div class="ttdef"><b>Definition:</b> <a href="dialogdata_8h_source.html#l00107">dialogdata.h:107</a></div></div>
<div class="ttc" id="structShipCAD_1_1LayerProperties_html_a4e9844dd95994725401ad93c5c3a00e9"><div class="ttname"><a href="structShipCAD_1_1LayerProperties.html#a4e9844dd95994725401ad93c5c3a00e9">ShipCAD::LayerProperties::weight</a></div><div class="ttdeci">float weight</div><div class="ttdef"><b>Definition:</b> <a href="shipcadlib_8h_source.html#l00189">shipcadlib.h:189</a></div></div>
<div class="ttc" id="namespacestd_html"><div class="ttname"><a href="namespacestd.html">std</a></div><div class="ttdoc">STL namespace. </div></div>
<div class="ttc" id="structShipCAD_1_1LayerPropertiesForDialog_html_a20a555fd2c477f691cc04a4fe9b7f6b0"><div class="ttname"><a href="structShipCAD_1_1LayerPropertiesForDialog.html#a20a555fd2c477f691cc04a4fe9b7f6b0">ShipCAD::LayerPropertiesForDialog::color</a></div><div class="ttdeci">QColor color</div><div class="ttdef"><b>Definition:</b> <a href="dialogdata_8h_source.html#l00097">dialogdata.h:97</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a33bbfedf8f0d130d91c74a65a575eb2a"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a33bbfedf8f0d130d91c74a65a575eb2a">ShipCAD::SubdivisionLayer::_desc</a></div><div class="ttdeci">QString _desc</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8h_source.html#l00169">subdivlayer.h:169</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a00a308fdf03a0c1d9a6fa65f965e7942"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a00a308fdf03a0c1d9a6fa65f965e7942">ShipCAD::SubdivisionLayer::_thickness</a></div><div class="ttdeci">float _thickness</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8h_source.html#l00176">subdivlayer.h:176</a></div></div>
<div class="ttc" id="namespaceShipCAD_html_a9956eca83968462fc4c48c376a10d577"><div class="ttname"><a href="namespaceShipCAD.html#a9956eca83968462fc4c48c376a10d577">ShipCAD::QColorFromDXFIndex</a></div><div class="ttdeci">QColor QColorFromDXFIndex(int index)</div><div class="ttdoc">get a QColor from a DXF color index </div><div class="ttdef"><b>Definition:</b> <a href="utility_8cpp_source.html#l00153">utility.cpp:153</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionEdge_html_a26deda12672fa679b49b28f2371e728b"><div class="ttname"><a href="classShipCAD_1_1SubdivisionEdge.html#a26deda12672fa679b49b28f2371e728b">ShipCAD::SubdivisionEdge::draw</a></div><div class="ttdeci">virtual void draw(bool draw_mirror, Viewport &amp;vp, LineShader *lineshader, const QColor &amp;edgeColor)</div><div class="ttdef"><b>Definition:</b> <a href="subdivedge_8cpp_source.html#l00316">subdivedge.cpp:316</a></div></div>
<div class="ttc" id="namespaceShipCAD_html_af3a6fa23a7318acbda7b0066b53d694fa3e815680f28b362a51b70712e376e7d7"><div class="ttname"><a href="namespaceShipCAD.html#af3a6fa23a7318acbda7b0066b53d694fa3e815680f28b362a51b70712e376e7d7">ShipCAD::fv260</a></div><div class="ttdef"><b>Definition:</b> <a href="version_8h_source.html#l00061">version.h:61</a></div></div>
<div class="ttc" id="classShipCAD_1_1CurveFaceShader_html"><div class="ttname"><a href="classShipCAD_1_1CurveFaceShader.html">ShipCAD::CurveFaceShader</a></div><div class="ttdef"><b>Definition:</b> <a href="shader_8h_source.html#l00152">shader.h:152</a></div></div>
<div class="ttc" id="classShipCAD_1_1FaceShader_html"><div class="ttname"><a href="classShipCAD_1_1FaceShader.html">ShipCAD::FaceShader</a></div><div class="ttdef"><b>Definition:</b> <a href="shader_8h_source.html#l00097">shader.h:97</a></div></div>
<div class="ttc" id="structShipCAD_1_1LayerPropertiesForDialog_html_a09578942af620f75d1599887672ec8da"><div class="ttname"><a href="structShipCAD_1_1LayerPropertiesForDialog.html#a09578942af620f75d1599887672ec8da">ShipCAD::LayerPropertiesForDialog::name</a></div><div class="ttdeci">QString name</div><div class="ttdef"><b>Definition:</b> <a href="dialogdata_8h_source.html#l00096">dialogdata.h:96</a></div></div>
<div class="ttc" id="viewport_8h_html"><div class="ttname"><a href="viewport_8h.html">viewport.h</a></div></div>
<div class="ttc" id="structShipCAD_1_1LayerPropertiesForDialog_html_a6003cb18c39e66df709658c14203d066"><div class="ttname"><a href="structShipCAD_1_1LayerPropertiesForDialog.html#a6003cb18c39e66df709658c14203d066">ShipCAD::LayerPropertiesForDialog::intersection_curves</a></div><div class="ttdeci">bool intersection_curves</div><div class="ttdef"><b>Definition:</b> <a href="dialogdata_8h_source.html#l00101">dialogdata.h:101</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionControlFace_html_a925866e18c4dddade1e77121f0b2dfb0"><div class="ttname"><a href="classShipCAD_1_1SubdivisionControlFace.html#a925866e18c4dddade1e77121f0b2dfb0">ShipCAD::SubdivisionControlFace::drawCurvatureFaces</a></div><div class="ttdeci">virtual void drawCurvatureFaces(CurveFaceShader *shader, float MinCurvature, float MaxCurvature)</div><div class="ttdef"><b>Definition:</b> <a href="subdivface_8cpp_source.html#l00908">subdivface.cpp:908</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionSurface_html_adbe8035c1602e8b2462e6052ffd3f3a4"><div class="ttname"><a href="classShipCAD_1_1SubdivisionSurface.html#adbe8035c1602e8b2462e6052ffd3f3a4">ShipCAD::SubdivisionSurface::getCreaseColor</a></div><div class="ttdeci">QColor getCreaseColor() const </div><div class="ttdef"><b>Definition:</b> <a href="subdivsurface_8h_source.html#l00348">subdivsurface.h:348</a></div></div>
<div class="ttc" id="structShipCAD_1_1PointGrid_html_a7c4b8397c5a6dfcb88f91412bc1ea5e2"><div class="ttname"><a href="structShipCAD_1_1PointGrid.html#a7c4b8397c5a6dfcb88f91412bc1ea5e2">ShipCAD::PointGrid::cols</a></div><div class="ttdeci">size_t cols()</div><div class="ttdef"><b>Definition:</b> <a href="pointgrid_8h_source.html#l00046">pointgrid.h:46</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionSurface_html_a4cfec985803a6cc41b3afecb2e81ede5"><div class="ttname"><a href="classShipCAD_1_1SubdivisionSurface.html#a4cfec985803a6cc41b3afecb2e81ede5">ShipCAD::SubdivisionSurface::showInteriorEdges</a></div><div class="ttdeci">bool showInteriorEdges() const </div><div class="ttdef"><b>Definition:</b> <a href="subdivsurface_8h_source.html#l00328">subdivsurface.h:328</a></div></div>
<div class="ttc" id="structShipCAD_1_1LayerProperties_html_a1b4bc8254c8cb90df594bc7905ce3e22"><div class="ttname"><a href="structShipCAD_1_1LayerProperties.html#a1b4bc8254c8cb90df594bc7905ce3e22">ShipCAD::LayerProperties::surface_center_of_gravity</a></div><div class="ttdeci">QVector3D surface_center_of_gravity</div><div class="ttdef"><b>Definition:</b> <a href="shipcadlib_8h_source.html#l00190">shipcadlib.h:190</a></div></div>
<div class="ttc" id="structShipCAD_1_1LayerPropertiesForDialog_html_a3acf39b44721d89ea8906052cc0bedde"><div class="ttname"><a href="structShipCAD_1_1LayerPropertiesForDialog.html#a3acf39b44721d89ea8906052cc0bedde">ShipCAD::LayerPropertiesForDialog::symmetric</a></div><div class="ttdeci">bool symmetric</div><div class="ttdef"><b>Definition:</b> <a href="dialogdata_8h_source.html#l00100">dialogdata.h:100</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a22eacfdf763840d534d45b18b789f8c7"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a22eacfdf763840d534d45b18b789f8c7">ShipCAD::SubdivisionLayer::getName</a></div><div class="ttdeci">QString getName() const </div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00074">subdivlayer.cpp:74</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionSurface_html_adc7aff2be270c70963ddebbdc052b482"><div class="ttname"><a href="classShipCAD_1_1SubdivisionSurface.html#adc7aff2be270c70963ddebbdc052b482">ShipCAD::SubdivisionSurface::getLayerColor</a></div><div class="ttdeci">QColor getLayerColor() const </div><div class="ttdef"><b>Definition:</b> <a href="subdivsurface_8h_source.html#l00351">subdivsurface.h:351</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionSurface_html_abcf2b65e206516f95021ad4f3f3aaf25"><div class="ttname"><a href="classShipCAD_1_1SubdivisionSurface.html#abcf2b65e206516f95021ad4f3f3aaf25">ShipCAD::SubdivisionSurface::getDefaultLayerName</a></div><div class="ttdeci">QString getDefaultLayerName() const </div><div class="ttdef"><b>Definition:</b> <a href="subdivsurface_8cpp_source.html#l01370">subdivsurface.cpp:1370</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionControlFace_html_a864eb7e746c2e057542efe14a4bba241"><div class="ttname"><a href="classShipCAD_1_1SubdivisionControlFace.html#a864eb7e746c2e057542efe14a4bba241">ShipCAD::SubdivisionControlFace::insertControlEdge</a></div><div class="ttdeci">SubdivisionControlEdge * insertControlEdge(SubdivisionControlPoint *p1, SubdivisionControlPoint *p2, bool &amp;deleteme)</div><div class="ttdoc">add a control edge </div><div class="ttdef"><b>Definition:</b> <a href="subdivface_8cpp_source.html#l01021">subdivface.cpp:1021</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionSurface_html_afca8f2be85e020c226d615f093a54aa8"><div class="ttname"><a href="classShipCAD_1_1SubdivisionSurface.html#afca8f2be85e020c226d615f093a54aa8">ShipCAD::SubdivisionSurface::hasLayer</a></div><div class="ttdeci">bool hasLayer(const SubdivisionLayer *layer) const </div><div class="ttdef"><b>Definition:</b> <a href="subdivsurface_8cpp_source.html#l01201">subdivsurface.cpp:1201</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a4a4190cc8ce19c975af865d1ce435f39"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a4a4190cc8ce19c975af865d1ce435f39">ShipCAD::SubdivisionLayer::useControlFace</a></div><div class="ttdeci">void useControlFace(SubdivisionControlFace *newface)</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00230">subdivlayer.cpp:230</a></div></div>
<div class="ttc" id="subdivsurface_8h_html"><div class="ttname"><a href="subdivsurface_8h.html">subdivsurface.h</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a8213aa3e02493472fb11949f595446f2"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a8213aa3e02493472fb11949f595446f2">ShipCAD::SubdivisionLayer::_use_for_intersections</a></div><div class="ttdeci">bool _use_for_intersections</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8h_source.html#l00172">subdivlayer.h:172</a></div></div>
<div class="ttc" id="subdivpoint_8h_html"><div class="ttname"><a href="subdivpoint_8h.html">subdivpoint.h</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionBase_html"><div class="ttname"><a href="classShipCAD_1_1SubdivisionBase.html">ShipCAD::SubdivisionBase</a></div><div class="ttdoc">the base class for all subdivision points, edges and faces </div><div class="ttdef"><b>Definition:</b> <a href="subdivbase_8h_source.html#l00045">subdivbase.h:45</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionControlFace_html_a9e205ab09b4660ab2b5377afaa620cd6"><div class="ttname"><a href="classShipCAD_1_1SubdivisionControlFace.html#a9e205ab09b4660ab2b5377afaa620cd6">ShipCAD::SubdivisionControlFace::getMin</a></div><div class="ttdeci">QVector3D getMin() const </div><div class="ttdef"><b>Definition:</b> <a href="subdivface_8h_source.html#l00319">subdivface.h:319</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_ab2d11ebf60ad6edd818eb0c42971946c"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#ab2d11ebf60ad6edd818eb0c42971946c">ShipCAD::SubdivisionLayer::calculateIntersectionPoints</a></div><div class="ttdeci">bool calculateIntersectionPoints(SubdivisionLayer *layer)</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00322">subdivlayer.cpp:322</a></div></div>
<div class="ttc" id="classShipCAD_1_1Viewport_html"><div class="ttname"><a href="classShipCAD_1_1Viewport.html">ShipCAD::Viewport</a></div><div class="ttdef"><b>Definition:</b> <a href="viewport_8h_source.html#l00070">viewport.h:70</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionBase_html_a164481259436bf18bc22a0626ab66c09"><div class="ttname"><a href="classShipCAD_1_1SubdivisionBase.html#a164481259436bf18bc22a0626ab66c09">ShipCAD::SubdivisionBase::_owner</a></div><div class="ttdeci">SubdivisionSurface * _owner</div><div class="ttdef"><b>Definition:</b> <a href="subdivbase_8h_source.html#l00095">subdivbase.h:95</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a42268e80d68448cdcfc12d1c06f20229"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a42268e80d68448cdcfc12d1c06f20229">ShipCAD::SubdivisionLayer::getColor</a></div><div class="ttdeci">QColor getColor() const </div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8h_source.html#l00108">subdivlayer.h:108</a></div></div>
<div class="ttc" id="filebuffer_8h_html"><div class="ttname"><a href="filebuffer_8h.html">filebuffer.h</a></div></div>
<div class="ttc" id="structShipCAD_1_1PointGrid_html"><div class="ttname"><a href="structShipCAD_1_1PointGrid.html">ShipCAD::PointGrid</a></div><div class="ttdef"><b>Definition:</b> <a href="pointgrid_8h_source.html#l00043">pointgrid.h:43</a></div></div>
<div class="ttc" id="structShipCAD_1_1LayerProperties_html_aff6dab68937efc1abd7bb5066373f514"><div class="ttname"><a href="structShipCAD_1_1LayerProperties.html#aff6dab68937efc1abd7bb5066373f514">ShipCAD::LayerProperties::surface_area</a></div><div class="ttdeci">float surface_area</div><div class="ttdef"><b>Definition:</b> <a href="shipcadlib_8h_source.html#l00188">shipcadlib.h:188</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a6fdfc0d208904d821349eb7380a52411"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a6fdfc0d208904d821349eb7380a52411">ShipCAD::SubdivisionLayer::setDevelopable</a></div><div class="ttdeci">void setDevelopable(bool val)</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00153">subdivlayer.cpp:153</a></div></div>
<div class="ttc" id="namespaceShipCAD_html_a67437198ee14f74e6c5277d761894863a85babb2fea8446064bbbf526b10bf36b"><div class="ttname"><a href="namespaceShipCAD.html#a67437198ee14f74e6c5277d761894863a85babb2fea8446064bbbf526b10bf36b">ShipCAD::vmShadeDevelopable</a></div><div class="ttdef"><b>Definition:</b> <a href="shipcadlib_8h_source.html#l00066">shipcadlib.h:66</a></div></div>
<div class="ttc" id="classPointerVector_html"><div class="ttname"><a href="classPointerVector.html">PointerVector</a></div><div class="ttdef"><b>Definition:</b> <a href="pointervec_8h_source.html#l00037">pointervec.h:37</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionSurface_html_a485f26282ac985446cdec3a98753c2eb"><div class="ttname"><a href="classShipCAD_1_1SubdivisionSurface.html#a485f26282ac985446cdec3a98753c2eb">ShipCAD::SubdivisionSurface::getMinGausCurvature</a></div><div class="ttdeci">float getMinGausCurvature() const </div><div class="ttdef"><b>Definition:</b> <a href="subdivsurface_8h_source.html#l00310">subdivsurface.h:310</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionEdge_html_ac4004284f7ab47437b9a1fe7adbde70d"><div class="ttname"><a href="classShipCAD_1_1SubdivisionEdge.html#ac4004284f7ab47437b9a1fe7adbde70d">ShipCAD::SubdivisionEdge::numberOfFaces</a></div><div class="ttdeci">size_t numberOfFaces() const </div><div class="ttdef"><b>Definition:</b> <a href="subdivedge_8h_source.html#l00080">subdivedge.h:80</a></div></div>
<div class="ttc" id="classShipCAD_1_1Viewport_html_af4f3c9649b9d1af1b149048fc99aebe9"><div class="ttname"><a href="classShipCAD_1_1Viewport.html#af4f3c9649b9d1af1b149048fc99aebe9">ShipCAD::Viewport::setCurveFaceShader</a></div><div class="ttdeci">CurveFaceShader * setCurveFaceShader()</div><div class="ttdef"><b>Definition:</b> <a href="viewport_8cpp_source.html#l00271">viewport.cpp:271</a></div></div>
<div class="ttc" id="classShipCAD_1_1DevelopedPatch_html_a55470422ecac9d544c811eddc8c3d1c1"><div class="ttname"><a href="classShipCAD_1_1DevelopedPatch.html#a55470422ecac9d544c811eddc8c3d1c1">ShipCAD::DevelopedPatch::unroll</a></div><div class="ttdeci">void unroll(std::vector&lt; SubdivisionControlFace * &gt; controlfaces)</div><div class="ttdef"><b>Definition:</b> <a href="developedpatch_8cpp_source.html#l00473">developedpatch.cpp:473</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a1681170da038b0708d1b4dcd2ec89b81"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a1681170da038b0708d1b4dcd2ec89b81">ShipCAD::SubdivisionLayer::_alphablend</a></div><div class="ttdeci">unsigned char _alphablend</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8h_source.html#l00177">subdivlayer.h:177</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionSurface_html_ac1efd2774e8a7e646468154ed5480f94"><div class="ttname"><a href="classShipCAD_1_1SubdivisionSurface.html#ac1efd2774e8a7e646468154ed5480f94">ShipCAD::SubdivisionSurface::lastUsedLayerID</a></div><div class="ttdeci">size_t lastUsedLayerID() const </div><div class="ttdef"><b>Definition:</b> <a href="subdivsurface_8h_source.html#l00293">subdivsurface.h:293</a></div></div>
<div class="ttc" id="namespaceShipCAD_html_a949bc53a1634b268b43de672807480fb"><div class="ttname"><a href="namespaceShipCAD.html#a949bc53a1634b268b43de672807480fb">ShipCAD::ZERO</a></div><div class="ttdeci">const QVector3D ZERO</div></div>
<div class="ttc" id="classShipCAD_1_1FileBuffer_html_a86223c54bcf111ef205c9d651e0b9a66"><div class="ttname"><a href="classShipCAD_1_1FileBuffer.html#a86223c54bcf111ef205c9d651e0b9a66">ShipCAD::FileBuffer::load</a></div><div class="ttdeci">void load(JPEGImage &amp;img)</div><div class="ttdef"><b>Definition:</b> <a href="filebuffer_8cpp_source.html#l00096">filebuffer.cpp:96</a></div></div>
<div class="ttc" id="subdivedge_8h_html"><div class="ttname"><a href="subdivedge_8h.html">subdivedge.h</a></div></div>
<div class="ttc" id="classShipCAD_1_1DevelopedPatch_html_ae2a022f78ac1345f6ede335b32eadeb1"><div class="ttname"><a href="classShipCAD_1_1DevelopedPatch.html#ae2a022f78ac1345f6ede335b32eadeb1">ShipCAD::DevelopedPatch::isMirror</a></div><div class="ttdeci">bool isMirror()</div><div class="ttdef"><b>Definition:</b> <a href="developedpatch_8h_source.html#l00116">developedpatch.h:116</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionFace_html"><div class="ttname"><a href="classShipCAD_1_1SubdivisionFace.html">ShipCAD::SubdivisionFace</a></div><div class="ttdef"><b>Definition:</b> <a href="subdivface_8h_source.html#l00058">subdivface.h:58</a></div></div>
<div class="ttc" id="classShipCAD_1_1Viewport_html_a03cc2ed85178b9735c80b11dceb470b5"><div class="ttname"><a href="classShipCAD_1_1Viewport.html#a03cc2ed85178b9735c80b11dceb470b5">ShipCAD::Viewport::setLightedFaceShader</a></div><div class="ttdeci">FaceShader * setLightedFaceShader()</div><div class="ttdef"><b>Definition:</b> <a href="viewport_8cpp_source.html#l00258">viewport.cpp:258</a></div></div>
<div class="ttc" id="namespaceShipCAD_html_a646812cc2b9066dfc47f2ed7e1faa955"><div class="ttname"><a href="namespaceShipCAD.html#a646812cc2b9066dfc47f2ed7e1faa955">ShipCAD::Truncate</a></div><div class="ttdeci">QString Truncate(float val, int max_length)</div><div class="ttdoc">convert a float value to a string with max number of decimals </div><div class="ttdef"><b>Definition:</b> <a href="utility_8cpp_source.html#l00224">utility.cpp:224</a></div></div>
<div class="ttc" id="structShipCAD_1_1ControlFaceGrid_html"><div class="ttname"><a href="structShipCAD_1_1ControlFaceGrid.html">ShipCAD::ControlFaceGrid</a></div><div class="ttdef"><b>Definition:</b> <a href="controlfacegrid_8h_source.html#l00042">controlfacegrid.h:42</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionSurface_html_a6049cf9c53f06eb02fd34cdc0653cbfd"><div class="ttname"><a href="classShipCAD_1_1SubdivisionSurface.html#a6049cf9c53f06eb02fd34cdc0653cbfd">ShipCAD::SubdivisionSurface::convertToGrid</a></div><div class="ttdeci">void convertToGrid(ControlFaceGrid &amp;input, PointGrid &amp;grid)</div><div class="ttdef"><b>Definition:</b> <a href="subdivsurface_8cpp_source.html#l01980">subdivsurface.cpp:1980</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a234cb1ed2e4a4fceb4c7701d0a56f42e"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a234cb1ed2e4a4fceb4c7701d0a56f42e">ShipCAD::SubdivisionLayer::releaseControlFace</a></div><div class="ttdeci">void releaseControlFace(SubdivisionControlFace *face)</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00456">subdivlayer.cpp:456</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionControlFace_html"><div class="ttname"><a href="classShipCAD_1_1SubdivisionControlFace.html">ShipCAD::SubdivisionControlFace</a></div><div class="ttdef"><b>Definition:</b> <a href="subdivface_8h_source.html#l00219">subdivface.h:219</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionControlFace_html_a25e4ea676adc327a430b50a81e91ef9d"><div class="ttname"><a href="classShipCAD_1_1SubdivisionControlFace.html#a25e4ea676adc327a430b50a81e91ef9d">ShipCAD::SubdivisionControlFace::getLayer</a></div><div class="ttdeci">SubdivisionLayer * getLayer() const </div><div class="ttdef"><b>Definition:</b> <a href="subdivface_8h_source.html#l00307">subdivface.h:307</a></div></div>
<div class="ttc" id="subdivlayer_8h_html"><div class="ttname"><a href="subdivlayer_8h.html">subdivlayer.h</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a80009b02c31a01e2de9f93d5982b9a63"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a80009b02c31a01e2de9f93d5982b9a63">ShipCAD::SubdivisionLayer::priv_dump</a></div><div class="ttdeci">void priv_dump(std::ostream &amp;os, const char *prefix) const </div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00790">subdivlayer.cpp:790</a></div></div>
<div class="ttc" id="namespaceShipCAD_html_a67437198ee14f74e6c5277d761894863a109cd328af19be260371a7e5333043f8"><div class="ttname"><a href="namespaceShipCAD.html#a67437198ee14f74e6c5277d761894863a109cd328af19be260371a7e5333043f8">ShipCAD::vmWireFrame</a></div><div class="ttdef"><b>Definition:</b> <a href="shipcadlib_8h_source.html#l00063">shipcadlib.h:63</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a2e1538a000268fe5f56bf2bea4973c23"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a2e1538a000268fe5f56bf2bea4973c23">ShipCAD::SubdivisionLayer::getFace</a></div><div class="ttdeci">SubdivisionControlFace * getFace(size_t index)</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00083">subdivlayer.cpp:83</a></div></div>
<div class="ttc" id="namespaceShipCAD_html_aaba70dc1c80dc540bef320cb9b720a20aeaaf4833473e9e7c408d2f02c7d112c6"><div class="ttname"><a href="namespaceShipCAD.html#aaba70dc1c80dc540bef320cb9b720a20aeaaf4833473e9e7c408d2f02c7d112c6">ShipCAD::amRegular</a></div><div class="ttdef"><b>Definition:</b> <a href="shipcadlib_8h_source.html#l00152">shipcadlib.h:152</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_af6c25ed582173a904496f0dc7a45d725"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#af6c25ed582173a904496f0dc7a45d725">ShipCAD::SubdivisionLayer::setDescription</a></div><div class="ttdeci">void setDescription(const QString &amp;val)</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00167">subdivlayer.cpp:167</a></div></div>
<div class="ttc" id="structShipCAD_1_1ControlFaceGrid_html_ab7a808def28fd23029532f1bce5bb674"><div class="ttname"><a href="structShipCAD_1_1ControlFaceGrid.html#ab7a808def28fd23029532f1bce5bb674">ShipCAD::ControlFaceGrid::cols</a></div><div class="ttdeci">size_t cols()</div><div class="ttdef"><b>Definition:</b> <a href="controlfacegrid_8h_source.html#l00045">controlfacegrid.h:45</a></div></div>
<div class="ttc" id="namespaceShipCAD_html_a67437198ee14f74e6c5277d761894863ab1258f959e2d114750dffb3f9c2e2c0c"><div class="ttname"><a href="namespaceShipCAD.html#a67437198ee14f74e6c5277d761894863ab1258f959e2d114750dffb3f9c2e2c0c">ShipCAD::vmShade</a></div><div class="ttdef"><b>Definition:</b> <a href="shipcadlib_8h_source.html#l00064">shipcadlib.h:64</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a2fc3ac326021a97479b821331e295640"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a2fc3ac326021a97479b821331e295640">ShipCAD::SubdivisionLayer::extents</a></div><div class="ttdeci">void extents(QVector3D &amp;min, QVector3D &amp;max)</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00517">subdivlayer.cpp:517</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionSurface_html_aa72a8cf7c5bddaaf24ec41ad3480fe70"><div class="ttname"><a href="classShipCAD_1_1SubdivisionSurface.html#aa72a8cf7c5bddaaf24ec41ad3480fe70">ShipCAD::SubdivisionSurface::setLastUsedLayerID</a></div><div class="ttdeci">void setLastUsedLayerID(size_t newid)</div><div class="ttdef"><b>Definition:</b> <a href="subdivsurface_8h_source.html#l00294">subdivsurface.h:294</a></div></div>
<div class="ttc" id="classShipCAD_1_1FileBuffer_html"><div class="ttname"><a href="classShipCAD_1_1FileBuffer.html">ShipCAD::FileBuffer</a></div><div class="ttdoc">in-memory buffer for a binary file (FREE!Ship format) </div><div class="ttdef"><b>Definition:</b> <a href="filebuffer_8h_source.html#l00052">filebuffer.h:52</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionControlEdge_html_a4839a04d67e4240b570fd23be711bc10"><div class="ttname"><a href="classShipCAD_1_1SubdivisionControlEdge.html#a4839a04d67e4240b570fd23be711bc10">ShipCAD::SubdivisionControlEdge::insertControlPoint</a></div><div class="ttdeci">SubdivisionControlPoint * insertControlPoint(const QVector3D &amp;p)</div><div class="ttdef"><b>Definition:</b> <a href="subdivedge_8cpp_source.html#l00525">subdivedge.cpp:525</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionFace_html_a68bc7676c4f254ddb19e04f8cb5ba76f"><div class="ttname"><a href="classShipCAD_1_1SubdivisionFace.html#a68bc7676c4f254ddb19e04f8cb5ba76f">ShipCAD::SubdivisionFace::getPoint</a></div><div class="ttdeci">SubdivisionPoint * getPoint(size_t index) const </div><div class="ttdoc">get face point </div><div class="ttdef"><b>Definition:</b> <a href="subdivface_8cpp_source.html#l00147">subdivface.cpp:147</a></div></div>
<div class="ttc" id="namespaceShipCAD_html_aa5d3fc63603d716d3e24244049e1e510"><div class="ttname"><a href="namespaceShipCAD.html#aa5d3fc63603d716d3e24244049e1e510">ShipCAD::MinMax</a></div><div class="ttdeci">void MinMax(const QVector3D &amp;p, QVector3D &amp;min, QVector3D &amp;max)</div><div class="ttdoc">find the min and max coordinates from a point </div><div class="ttdef"><b>Definition:</b> <a href="utility_8cpp_source.html#l00040">utility.cpp:40</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionSurface_html_a69bafa71111e562a52a089be99b47871"><div class="ttname"><a href="classShipCAD_1_1SubdivisionSurface.html#a69bafa71111e562a52a089be99b47871">ShipCAD::SubdivisionSurface::setActiveLayer</a></div><div class="ttdeci">void setActiveLayer(SubdivisionLayer *layer)</div><div class="ttdef"><b>Definition:</b> <a href="subdivsurface_8cpp_source.html#l01375">subdivsurface.cpp:1375</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionControlFace_html_ac253493bccd91108d936b651e72b46f8"><div class="ttname"><a href="classShipCAD_1_1SubdivisionControlFace.html#ac253493bccd91108d936b651e72b46f8">ShipCAD::SubdivisionControlFace::draw</a></div><div class="ttdeci">virtual void draw(Viewport &amp;vp, LineShader *lineshader)</div><div class="ttdef"><b>Definition:</b> <a href="subdivface_8cpp_source.html#l00974">subdivface.cpp:974</a></div></div>
<div class="ttc" id="namespaceShipCAD_html_af3a6fa23a7318acbda7b0066b53d694fad37dee2f48dd8e2dacbb6ffb3928c7ea"><div class="ttname"><a href="namespaceShipCAD.html#af3a6fa23a7318acbda7b0066b53d694fad37dee2f48dd8e2dacbb6ffb3928c7ea">ShipCAD::fv180</a></div><div class="ttdef"><b>Definition:</b> <a href="version_8h_source.html#l00049">version.h:49</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionSurface_html_ad124b77753880a92de21d5d16333f966"><div class="ttname"><a href="classShipCAD_1_1SubdivisionSurface.html#ad124b77753880a92de21d5d16333f966">ShipCAD::SubdivisionSurface::getLayerPool</a></div><div class="ttdeci">Pool&lt; SubdivisionLayer &gt; &amp; getLayerPool()</div><div class="ttdef"><b>Definition:</b> <a href="subdivsurface_8h_source.html#l00381">subdivsurface.h:381</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionControlFace_html_a5c149807dc5891e23b463c4251e707f5"><div class="ttname"><a href="classShipCAD_1_1SubdivisionControlFace.html#a5c149807dc5891e23b463c4251e707f5">ShipCAD::SubdivisionControlFace::getControlEdge</a></div><div class="ttdeci">SubdivisionEdge * getControlEdge(size_t index) const </div><div class="ttdef"><b>Definition:</b> <a href="subdivface_8cpp_source.html#l01074">subdivface.cpp:1074</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_aef63325b0ef8b700b96a7cd97c501936"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#aef63325b0ef8b700b96a7cd97c501936">ShipCAD::SubdivisionLayer::setUseForIntersections</a></div><div class="ttdeci">void setUseForIntersections(bool val)</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00216">subdivlayer.cpp:216</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_ad0d77de06b53814e248fc9bbfa908252"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#ad0d77de06b53814e248fc9bbfa908252">ShipCAD::SubdivisionLayer::numberOfFaces</a></div><div class="ttdeci">size_t numberOfFaces() const </div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8h_source.html#l00071">subdivlayer.h:71</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionControlEdge_html"><div class="ttname"><a href="classShipCAD_1_1SubdivisionControlEdge.html">ShipCAD::SubdivisionControlEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="subdivedge_8h_source.html#l00116">subdivedge.h:116</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a4f65806f7c1a42e3a54ed13722790432"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a4f65806f7c1a42e3a54ed13722790432">ShipCAD::SubdivisionLayer::setMaterialDensity</a></div><div class="ttdeci">void setMaterialDensity(float val)</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00195">subdivlayer.cpp:195</a></div></div>
<div class="ttc" id="classShipCAD_1_1FileBuffer_html_a06f87b30f5fd091cc5c270964ea16770"><div class="ttname"><a href="classShipCAD_1_1FileBuffer.html#a06f87b30f5fd091cc5c270964ea16770">ShipCAD::FileBuffer::getVersion</a></div><div class="ttdeci">version_t getVersion()</div><div class="ttdef"><b>Definition:</b> <a href="filebuffer_8h_source.html#l00064">filebuffer.h:64</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionControlFace_html_a3f2351019487ed20295fa8c7995b9416"><div class="ttname"><a href="classShipCAD_1_1SubdivisionControlFace.html#a3f2351019487ed20295fa8c7995b9416">ShipCAD::SubdivisionControlFace::numberOfControlEdges</a></div><div class="ttdeci">size_t numberOfControlEdges() const </div><div class="ttdef"><b>Definition:</b> <a href="subdivface_8h_source.html#l00313">subdivface.h:313</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a73e4956d179d6ebd6c062e7e76bca196"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a73e4956d179d6ebd6c062e7e76bca196">ShipCAD::SubdivisionLayer::_layerid</a></div><div class="ttdeci">size_t _layerid</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8h_source.html#l00166">subdivlayer.h:166</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a979723de5c5cf0f4ecea8a5f9d0968d7"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a979723de5c5cf0f4ecea8a5f9d0968d7">ShipCAD::SubdivisionLayer::setVisible</a></div><div class="ttdeci">void setVisible(bool val)</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00223">subdivlayer.cpp:223</a></div></div>
<div class="ttc" id="structShipCAD_1_1PointGrid_html_a2bd6eecd15643afb29bd7de2f891b614"><div class="ttname"><a href="structShipCAD_1_1PointGrid.html#a2bd6eecd15643afb29bd7de2f891b614">ShipCAD::PointGrid::rows</a></div><div class="ttdeci">size_t rows()</div><div class="ttdef"><b>Definition:</b> <a href="pointgrid_8h_source.html#l00047">pointgrid.h:47</a></div></div>
<div class="ttc" id="structShipCAD_1_1LayerPropertiesForDialog_html"><div class="ttname"><a href="structShipCAD_1_1LayerPropertiesForDialog.html">ShipCAD::LayerPropertiesForDialog</a></div><div class="ttdoc">layer properties </div><div class="ttdef"><b>Definition:</b> <a href="dialogdata_8h_source.html#l00094">dialogdata.h:94</a></div></div>
<div class="ttc" id="utility_8h_html"><div class="ttname"><a href="utility_8h.html">utility.h</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionFace_html_abd79b6dfadd10befe94b524a34063b27"><div class="ttname"><a href="classShipCAD_1_1SubdivisionFace.html#abd79b6dfadd10befe94b524a34063b27">ShipCAD::SubdivisionFace::numberOfPoints</a></div><div class="ttdeci">size_t numberOfPoints() const </div><div class="ttdoc">number of points for this face </div><div class="ttdef"><b>Definition:</b> <a href="subdivface_8h_source.html#l00122">subdivface.h:122</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a88897eeb2b600169ca110fc4ec4aef08"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a88897eeb2b600169ca110fc4ec4aef08">ShipCAD::SubdivisionLayer::setUseInHydrostatics</a></div><div class="ttdeci">void setUseInHydrostatics(bool val)</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00209">subdivlayer.cpp:209</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionSurface_html_a3f0dac49106056562a8b675c61918abe"><div class="ttname"><a href="classShipCAD_1_1SubdivisionSurface.html#a3f0dac49106056562a8b675c61918abe">ShipCAD::SubdivisionSurface::deleteLayer</a></div><div class="ttdeci">void deleteLayer(SubdivisionLayer *layer)</div><div class="ttdef"><b>Definition:</b> <a href="subdivsurface_8cpp_source.html#l01207">subdivsurface.cpp:1207</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a838537201ca31bc92a38585c87eb56e9"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a838537201ca31bc92a38585c87eb56e9">ShipCAD::SubdivisionLayer::drawLayers</a></div><div class="ttdeci">static void drawLayers(Viewport &amp;vp, SubdivisionSurface *surface)</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00463">subdivlayer.cpp:463</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_adfdd4e996a5be7147a2eeb682dd93ff8"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#adfdd4e996a5be7147a2eeb682dd93ff8">ShipCAD::SubdivisionLayer::_material_density</a></div><div class="ttdeci">float _material_density</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8h_source.html#l00175">subdivlayer.h:175</a></div></div>
<div class="ttc" id="classShipCAD_1_1LineShader_html"><div class="ttname"><a href="classShipCAD_1_1LineShader.html">ShipCAD::LineShader</a></div><div class="ttdef"><b>Definition:</b> <a href="shader_8h_source.html#l00075">shader.h:75</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionSurface_html_a394c490440fb20c37abfc2f38d6e50fd"><div class="ttname"><a href="classShipCAD_1_1SubdivisionSurface.html#a394c490440fb20c37abfc2f38d6e50fd">ShipCAD::SubdivisionSurface::deleteControlFace</a></div><div class="ttdeci">void deleteControlFace(SubdivisionControlFace *face)</div><div class="ttdef"><b>Definition:</b> <a href="subdivsurface_8cpp_source.html#l01147">subdivsurface.cpp:1147</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionEdge_html_aa6e28532f3ecc1610813844dfb385deb"><div class="ttname"><a href="classShipCAD_1_1SubdivisionEdge.html#aa6e28532f3ecc1610813844dfb385deb">ShipCAD::SubdivisionEdge::startPoint</a></div><div class="ttdeci">SubdivisionPoint * startPoint() const </div><div class="ttdef"><b>Definition:</b> <a href="subdivedge_8h_source.html#l00075">subdivedge.h:75</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html">ShipCAD::SubdivisionLayer</a></div><div class="ttdoc">Layer, collection of SubdivisionControlFaces. </div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8h_source.html#l00061">subdivlayer.h:61</a></div></div>
<div class="ttc" id="namespaceShipCAD_html_af3a6fa23a7318acbda7b0066b53d694fa155bf0424294686430a251fed7e7cb83"><div class="ttname"><a href="namespaceShipCAD.html#af3a6fa23a7318acbda7b0066b53d694fa155bf0424294686430a251fed7e7cb83">ShipCAD::fv191</a></div><div class="ttdef"><b>Definition:</b> <a href="version_8h_source.html#l00051">version.h:51</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionEdge_html_ae649fe7169f64a8e5ede1fbb36a176fa"><div class="ttname"><a href="classShipCAD_1_1SubdivisionEdge.html#ae649fe7169f64a8e5ede1fbb36a176fa">ShipCAD::SubdivisionEdge::isCrease</a></div><div class="ttdeci">bool isCrease() const </div><div class="ttdef"><b>Definition:</b> <a href="subdivedge_8h_source.html#l00081">subdivedge.h:81</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_ab41e005f720a2bba4b2efa74bfd5943e"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#ab41e005f720a2bba4b2efa74bfd5943e">ShipCAD::SubdivisionLayer::dump</a></div><div class="ttdeci">virtual void dump(std::ostream &amp;os, const char *prefix=&quot;&quot;) const </div><div class="ttdoc">print out the element to a stream </div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00783">subdivlayer.cpp:783</a></div></div>
<div class="ttc" id="namespaceShipCAD_html_a67437198ee14f74e6c5277d761894863aaf20984128d2e9697958fa8c329a801a"><div class="ttname"><a href="namespaceShipCAD.html#a67437198ee14f74e6c5277d761894863aaf20984128d2e9697958fa8c329a801a">ShipCAD::vmShadeGauss</a></div><div class="ttdef"><b>Definition:</b> <a href="shipcadlib_8h_source.html#l00065">shipcadlib.h:65</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_af1d37cf069e050828f42c034ada4661e"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#af1d37cf069e050828f42c034ada4661e">ShipCAD::SubdivisionLayer::isSymmetric</a></div><div class="ttdeci">bool isSymmetric() const </div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8h_source.html#l00086">subdivlayer.h:86</a></div></div>
<div class="ttc" id="structShipCAD_1_1LayerPropertiesForDialog_html_a0bcd4eb69a1b82c26e9dfcf1707cf850"><div class="ttname"><a href="structShipCAD_1_1LayerPropertiesForDialog.html#a0bcd4eb69a1b82c26e9dfcf1707cf850">ShipCAD::LayerPropertiesForDialog::data</a></div><div class="ttdeci">const SubdivisionLayer * data</div><div class="ttdef"><b>Definition:</b> <a href="dialogdata_8h_source.html#l00106">dialogdata.h:106</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionControlFace_html_a23631dfffd1c3ad7fc59537a4684fa01"><div class="ttname"><a href="classShipCAD_1_1SubdivisionControlFace.html#a23631dfffd1c3ad7fc59537a4684fa01">ShipCAD::SubdivisionControlFace::setLayer</a></div><div class="ttdeci">void setLayer(SubdivisionLayer *layer)</div><div class="ttdef"><b>Definition:</b> <a href="subdivface_8cpp_source.html#l01108">subdivface.cpp:1108</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionControlFace_html_a45d5155a450040671ffba6cc691c79d7"><div class="ttname"><a href="classShipCAD_1_1SubdivisionControlFace.html#a45d5155a450040671ffba6cc691c79d7">ShipCAD::SubdivisionControlFace::drawFaces</a></div><div class="ttdeci">virtual void drawFaces(Viewport &amp;vp, FaceShader *shader)</div><div class="ttdef"><b>Definition:</b> <a href="subdivface_8cpp_source.html#l00712">subdivface.cpp:712</a></div></div>
<div class="ttc" id="namespaceShipCAD_html_a87efc267ae07a84fb1cd55a4562c2907"><div class="ttname"><a href="namespaceShipCAD.html#a87efc267ae07a84fb1cd55a4562c2907">ShipCAD::FindDXFColorIndex</a></div><div class="ttdeci">int FindDXFColorIndex(QColor color)</div><div class="ttdoc">convert a QColor to a DXF color index </div><div class="ttdef"><b>Definition:</b> <a href="utility_8cpp_source.html#l00133">utility.cpp:133</a></div></div>
<div class="ttc" id="classShipCAD_1_1Viewport_html_a205e5082395c6d01660ffc179c57b83e"><div class="ttname"><a href="classShipCAD_1_1Viewport.html#a205e5082395c6d01660ffc179c57b83e">ShipCAD::Viewport::getViewportMode</a></div><div class="ttdeci">viewport_mode_t getViewportMode() const </div><div class="ttdef"><b>Definition:</b> <a href="viewport_8h_source.html#l00095">viewport.h:95</a></div></div>
<div class="ttc" id="classShipCAD_1_1Plane_html"><div class="ttname"><a href="classShipCAD_1_1Plane.html">ShipCAD::Plane</a></div><div class="ttdef"><b>Definition:</b> <a href="plane_8h_source.html#l00039">plane.h:39</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_ad36d65882f0c46ff1b3ced7d48c173f4"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#ad36d65882f0c46ff1b3ced7d48c173f4">ShipCAD::SubdivisionLayer::_use_in_hydrostatics</a></div><div class="ttdeci">bool _use_in_hydrostatics</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8h_source.html#l00173">subdivlayer.h:173</a></div></div>
<div class="ttc" id="namespaceShipCAD_html_a70b238d926183460670b82d9680b5cb9"><div class="ttname"><a href="namespaceShipCAD.html#a70b238d926183460670b82d9680b5cb9">ShipCAD::ReadIntFromStr</a></div><div class="ttdeci">int ReadIntFromStr(size_t lineno, const QString &amp;str, size_t &amp;start)</div><div class="ttdoc">convert a string to an integer value </div><div class="ttdef"><b>Definition:</b> <a href="utility_8cpp_source.html#l00497">utility.cpp:497</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a86f8600ffbf3973bc31c99bdb9e5b18d"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a86f8600ffbf3973bc31c99bdb9e5b18d">ShipCAD::SubdivisionLayer::draw</a></div><div class="ttdeci">virtual void draw(Viewport &amp;vp)</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00472">subdivlayer.cpp:472</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a373fd987b5f973a995517e7f97fda5ac"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a373fd987b5f973a995517e7f97fda5ac">ShipCAD::SubdivisionLayer::_show_in_linesplan</a></div><div class="ttdeci">bool _show_in_linesplan</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8h_source.html#l00174">subdivlayer.h:174</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_af21e024f64ce46bfbcc668a093c54d4d"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#af21e024f64ce46bfbcc668a093c54d4d">ShipCAD::SubdivisionLayer::saveToStream</a></div><div class="ttdeci">void saveToStream(QStringList &amp;strings) const </div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00674">subdivlayer.cpp:674</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionSurface_html_adfdeabdc19eb55a7ba4ab0b607207300"><div class="ttname"><a href="classShipCAD_1_1SubdivisionSurface.html#adfdeabdc19eb55a7ba4ab0b607207300">ShipCAD::SubdivisionSurface::edgeExists</a></div><div class="ttdeci">SubdivisionEdge * edgeExists(SubdivisionPoint *p1, SubdivisionPoint *p2)</div><div class="ttdef"><b>Definition:</b> <a href="subdivsurface_8cpp_source.html#l02603">subdivsurface.cpp:2603</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_ab3c7c5072ba6cd411404651e8e0dca2f"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#ab3c7c5072ba6cd411404651e8e0dca2f">ShipCAD::SubdivisionLayer::setSymmetric</a></div><div class="ttdeci">void setSymmetric(bool val)</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00174">subdivlayer.cpp:174</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionControlEdge_html_ae247e08eec97952d1835df03c8269829"><div class="ttname"><a href="classShipCAD_1_1SubdivisionControlEdge.html#ae247e08eec97952d1835df03c8269829">ShipCAD::SubdivisionControlEdge::setSelected</a></div><div class="ttdeci">void setSelected(bool val)</div><div class="ttdef"><b>Definition:</b> <a href="subdivedge_8cpp_source.html#l00484">subdivedge.cpp:484</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a5494031433242c810e6e307bfef33e6d"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a5494031433242c810e6e307bfef33e6d">ShipCAD::SubdivisionLayer::setColor</a></div><div class="ttdeci">void setColor(QColor col)</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00181">subdivlayer.cpp:181</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionSurface_html_a011480014cfb68430c9f60aff474936c"><div class="ttname"><a href="classShipCAD_1_1SubdivisionSurface.html#a011480014cfb68430c9f60aff474936c">ShipCAD::SubdivisionSurface::numberOfLayers</a></div><div class="ttdeci">size_t numberOfLayers() const </div><div class="ttdef"><b>Definition:</b> <a href="subdivsurface_8h_source.html#l00285">subdivsurface.h:285</a></div></div>
<div class="ttc" id="classPointerVector_html_abaee9f77dee6ea2523dff64b184c9f54"><div class="ttname"><a href="classPointerVector.html#abaee9f77dee6ea2523dff64b184c9f54">PointerVector::add</a></div><div class="ttdeci">void add(T *elem)</div><div class="ttdef"><b>Definition:</b> <a href="pointervec_8h_source.html#l00072">pointervec.h:72</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a060357b84c0549fa7310e45680fed9bd"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a060357b84c0549fa7310e45680fed9bd">ShipCAD::SubdivisionLayer::loadBinary</a></div><div class="ttdeci">void loadBinary(FileBuffer &amp;source)</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00604">subdivlayer.cpp:604</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_aa58323da0043db61eaa87672755e96d2"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#aa58323da0043db61eaa87672755e96d2">ShipCAD::SubdivisionLayer::setShowInLinesplan</a></div><div class="ttdeci">void setShowInLinesplan(bool val)</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00202">subdivlayer.cpp:202</a></div></div>
<div class="ttc" id="namespaceShipCAD_html"><div class="ttname"><a href="namespaceShipCAD.html">ShipCAD</a></div><div class="ttdef"><b>Definition:</b> <a href="backgroundimage_8h_source.html#l00039">backgroundimage.h:39</a></div></div>
<div class="ttc" id="controlfacegrid_8h_html"><div class="ttname"><a href="controlfacegrid_8h.html">controlfacegrid.h</a></div></div>
<div class="ttc" id="structShipCAD_1_1LayerPropertiesForDialog_html_a2ac6ce1339e9dfc028016c5bacea3cae"><div class="ttname"><a href="structShipCAD_1_1LayerPropertiesForDialog.html#a2ac6ce1339e9dfc028016c5bacea3cae">ShipCAD::LayerPropertiesForDialog::hydrostatics</a></div><div class="ttdeci">bool hydrostatics</div><div class="ttdef"><b>Definition:</b> <a href="dialogdata_8h_source.html#l00099">dialogdata.h:99</a></div></div>
<div class="ttc" id="structShipCAD_1_1PointGrid_html_ac550e1688340f55d1dae9ec8c370ee31"><div class="ttname"><a href="structShipCAD_1_1PointGrid.html#ac550e1688340f55d1dae9ec8c370ee31">ShipCAD::PointGrid::getPoint</a></div><div class="ttdeci">SubdivisionPoint * getPoint(size_t row, size_t col)</div><div class="ttdef"><b>Definition:</b> <a href="pointgrid_8h_source.html#l00060">pointgrid.h:60</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a716ee3981e86d5171f392bbee9b7a9da"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a716ee3981e86d5171f392bbee9b7a9da">ShipCAD::SubdivisionLayer::unroll</a></div><div class="ttdeci">void unroll(PointerVector&lt; DevelopedPatch &gt; &amp;destination)</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00536">subdivlayer.cpp:536</a></div></div>
<div class="ttc" id="namespaceShipCAD_html_a26237f4689cbf7e356c7c1ce3f9c69ff"><div class="ttname"><a href="namespaceShipCAD.html#a26237f4689cbf7e356c7c1ce3f9c69ff">ShipCAD::to_size_t</a></div><div class="ttdeci">size_t to_size_t(int val)</div><div class="ttdoc">convert an int to a size_t </div><div class="ttdef"><b>Definition:</b> <a href="utility_8cpp_source.html#l00630">utility.cpp:630</a></div></div>
<div class="ttc" id="structShipCAD_1_1ControlFaceGrid_html_ae77d2fb91a62c9631c66786a905d256d"><div class="ttname"><a href="structShipCAD_1_1ControlFaceGrid.html#ae77d2fb91a62c9631c66786a905d256d">ShipCAD::ControlFaceGrid::getFace</a></div><div class="ttdeci">SubdivisionControlFace * getFace(size_t row, size_t col)</div><div class="ttdef"><b>Definition:</b> <a href="controlfacegrid_8h_source.html#l00063">controlfacegrid.h:63</a></div></div>
<div class="ttc" id="namespaceShipCAD_html_ae1773f0e415446342401a67430a8b643"><div class="ttname"><a href="namespaceShipCAD.html#ae1773f0e415446342401a67430a8b643">ShipCAD::PointInTriangle</a></div><div class="ttdeci">bool PointInTriangle(const QVector3D &amp;intercept, const QVector3D &amp;p0, const QVector3D &amp;p1, const QVector3D &amp;p2)</div><div class="ttdoc">find if point lies inside a triangle and on the plane of the triangle </div><div class="ttdef"><b>Definition:</b> <a href="utility_8cpp_source.html#l00269">utility.cpp:269</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionPoint_html_a285325115089a1b99be4480bf6079bf1"><div class="ttname"><a href="classShipCAD_1_1SubdivisionPoint.html#a285325115089a1b99be4480bf6079bf1">ShipCAD::SubdivisionPoint::getCoordinate</a></div><div class="ttdeci">QVector3D getCoordinate() const </div><div class="ttdef"><b>Definition:</b> <a href="subdivpoint_8h_source.html#l00140">subdivpoint.h:140</a></div></div>
<div class="ttc" id="structShipCAD_1_1ControlFaceGrid_html_a8b124d162ea1d32383f4896e29811c12"><div class="ttname"><a href="structShipCAD_1_1ControlFaceGrid.html#a8b124d162ea1d32383f4896e29811c12">ShipCAD::ControlFaceGrid::rows</a></div><div class="ttdeci">size_t rows()</div><div class="ttdef"><b>Definition:</b> <a href="controlfacegrid_8h_source.html#l00046">controlfacegrid.h:46</a></div></div>
<div class="ttc" id="structShipCAD_1_1LayerProperties_html"><div class="ttname"><a href="structShipCAD_1_1LayerProperties.html">ShipCAD::LayerProperties</a></div><div class="ttdef"><b>Definition:</b> <a href="shipcadlib_8h_source.html#l00186">shipcadlib.h:186</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionPoint_html"><div class="ttname"><a href="classShipCAD_1_1SubdivisionPoint.html">ShipCAD::SubdivisionPoint</a></div><div class="ttdoc">3D Point </div><div class="ttdef"><b>Definition:</b> <a href="subdivpoint_8h_source.html#l00059">subdivpoint.h:59</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionSurface_html"><div class="ttname"><a href="classShipCAD_1_1SubdivisionSurface.html">ShipCAD::SubdivisionSurface</a></div><div class="ttdoc">Subdivision Surface. </div><div class="ttdef"><b>Definition:</b> <a href="subdivsurface_8h_source.html#l00103">subdivsurface.h:103</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionEdge_html_aa65e2e10929c52fd05b6bb90317977dc"><div class="ttname"><a href="classShipCAD_1_1SubdivisionEdge.html#aa65e2e10929c52fd05b6bb90317977dc">ShipCAD::SubdivisionEdge::endPoint</a></div><div class="ttdeci">SubdivisionPoint * endPoint() const </div><div class="ttdef"><b>Definition:</b> <a href="subdivedge_8h_source.html#l00076">subdivedge.h:76</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionSurface_html_a6a89be4440e3adfcb0b14c164db891ae"><div class="ttname"><a href="classShipCAD_1_1SubdivisionSurface.html#a6a89be4440e3adfcb0b14c164db891ae">ShipCAD::SubdivisionSurface::controlEdgeExists</a></div><div class="ttdeci">SubdivisionControlEdge * controlEdgeExists(SubdivisionPoint *p1, SubdivisionPoint *p2)</div><div class="ttdef"><b>Definition:</b> <a href="subdivsurface_8cpp_source.html#l02628">subdivsurface.cpp:2628</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a7046d17ba87dd5ce7399f22ae327fc6e"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a7046d17ba87dd5ce7399f22ae327fc6e">ShipCAD::SubdivisionLayer::clear</a></div><div class="ttdeci">virtual void clear()</div><div class="ttdoc">reset this element to default values </div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00439">subdivlayer.cpp:439</a></div></div>
<div class="ttc" id="subdivlayer_8cpp_html_a7e5a5837d8fcd488f6f97c29c2ba3477"><div class="ttname"><a href="subdivlayer_8cpp.html#a7e5a5837d8fcd488f6f97c29c2ba3477">operator&lt;&lt;</a></div><div class="ttdeci">ostream &amp; operator&lt;&lt;(ostream &amp;os, const ShipCAD::SubdivisionLayer &amp;layer)</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00795">subdivlayer.cpp:795</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_aaeddcdf1d08d84c76c5453f4a71fbe7a"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#aaeddcdf1d08d84c76c5453f4a71fbe7a">ShipCAD::SubdivisionLayer::_symmetric</a></div><div class="ttdeci">bool _symmetric</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8h_source.html#l00170">subdivlayer.h:170</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_abc2dc45d2e93e536cf198b31d8258201"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#abc2dc45d2e93e536cf198b31d8258201">ShipCAD::SubdivisionLayer::findAttachedFaces</a></div><div class="ttdeci">void findAttachedFaces(std::vector&lt; SubdivisionControlFace * &gt; &amp;list, SubdivisionControlFace *face, std::vector&lt; SubdivisionControlFace * &gt; &amp;todo)</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00577">subdivlayer.cpp:577</a></div></div>
<div class="ttc" id="classShipCAD_1_1Plane_html_a1105f3715d9593c0971e0b0959859a84"><div class="ttname"><a href="classShipCAD_1_1Plane.html#a1105f3715d9593c0971e0b0959859a84">ShipCAD::Plane::a</a></div><div class="ttdeci">float a() const </div><div class="ttdef"><b>Definition:</b> <a href="plane_8h_source.html#l00050">plane.h:50</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a48cbd23cf3d5492c4341cf9cd62214cd"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a48cbd23cf3d5492c4341cf9cd62214cd">ShipCAD::SubdivisionLayer::saveBinary</a></div><div class="ttdeci">void saveBinary(FileBuffer &amp;destination) const </div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00687">subdivlayer.cpp:687</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a2d606476aba40bbbfc115c449f46ac26"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a2d606476aba40bbbfc115c449f46ac26">ShipCAD::SubdivisionLayer::_visible</a></div><div class="ttdeci">bool _visible</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8h_source.html#l00168">subdivlayer.h:168</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_a98b25b86a7104e4f987d34506438113f"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#a98b25b86a7104e4f987d34506438113f">ShipCAD::SubdivisionLayer::_patches</a></div><div class="ttdeci">std::vector&lt; SubdivisionControlFace * &gt; _patches</div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8h_source.html#l00178">subdivlayer.h:178</a></div></div>
<div class="ttc" id="namespaceShipCAD_html_af3a6fa23a7318acbda7b0066b53d694fadfb6c2f915e2ab1d0a40f8c83a04748d"><div class="ttname"><a href="namespaceShipCAD.html#af3a6fa23a7318acbda7b0066b53d694fadfb6c2f915e2ab1d0a40f8c83a04748d">ShipCAD::fv201</a></div><div class="ttdef"><b>Definition:</b> <a href="version_8h_source.html#l00055">version.h:55</a></div></div>
<div class="ttc" id="structShipCAD_1_1LayerPropertiesForDialog_html_a7df2aaba3b7824534100f46546d9479e"><div class="ttname"><a href="structShipCAD_1_1LayerPropertiesForDialog.html#a7df2aaba3b7824534100f46546d9479e">ShipCAD::LayerPropertiesForDialog::show_linesplan</a></div><div class="ttdeci">bool show_linesplan</div><div class="ttdef"><b>Definition:</b> <a href="dialogdata_8h_source.html#l00103">dialogdata.h:103</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionLayer_html_aee60763cd9524debb45f4a04e46676f2"><div class="ttname"><a href="classShipCAD_1_1SubdivisionLayer.html#aee60763cd9524debb45f4a04e46676f2">ShipCAD::SubdivisionLayer::getSurfaceProperties</a></div><div class="ttdeci">LayerProperties getSurfaceProperties() const </div><div class="ttdef"><b>Definition:</b> <a href="subdivlayer_8cpp_source.html#l00117">subdivlayer.cpp:117</a></div></div>
<div class="ttc" id="classShipCAD_1_1SubdivisionSurface_html_a61fb5c6ccba4c5491ddcc69182213831"><div class="ttname"><a href="classShipCAD_1_1SubdivisionSurface.html#a61fb5c6ccba4c5491ddcc69182213831">ShipCAD::SubdivisionSurface::getMaxGausCurvature</a></div><div class="ttdeci">float getMaxGausCurvature() const </div><div class="ttdef"><b>Definition:</b> <a href="subdivsurface_8h_source.html#l00311">subdivsurface.h:311</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Feb 25 2018 15:36:00 for ShipCAD by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.11
</small></address>
</body>
</html>
